วิธีโยกย้ายพื้นที่ทำงานร้านค้าและเลเยอร์เฉพาะใน Geoserver


13

Geoserver ทำงานบนสภาพแวดล้อมการพัฒนาและการผลิต ฉันต้องการย้ายพื้นที่ทำงานร้านค้าเลเยอร์สไตล์ ฯลฯ จากการพัฒนาไปสู่การผลิต ฉันจะทำสิ่งนี้ได้อย่างไร

ฉันรู้ว่าฉันสามารถคัดลอก data-dir ทั้งหมดไปยังการผลิตและรีสตาร์ท geoserver แต่กว่าพื้นที่ทำงานร้านค้าและอื่น ๆ ทั้งหมดจะถูกโยกย้าย ประเด็นคือฉันต้องการเพียงหนึ่งในพื้นที่ทำงานร้านค้าและอื่น ๆ

ในสภาพแวดล้อมการพัฒนาฉันมีพื้นที่ทดสอบหลายร้านและเลเยอร์ซึ่งฉันไม่ต้องการในการผลิต

ใน data-dir ฉันเห็นไดเร็กตอรี่ gwc-layer, ด้วยไฟล์ xml จำนวนมาก แต่ฉันจะรู้ได้อย่างไรว่า xml เป็นชั้นใด

คำตอบ:


13

วิธีนี้ค่อนข้างง่ายและมีความเสี่ยงเล็กน้อย แต่อย่าลืมสำรองข้อมูลไดเรกทอรีข้อมูลการผลิตของคุณด้วย

เพียงคัดลอกไดเรกทอรี / ไฟล์ต่อไปนี้:

/workspaces/YOUR_WORKSPACE_NAME/ ไดเร็กทอรีเวิร์กสเปซที่คุณคัดลอกไปจริง ๆ แล้วมีการประกาศการจัดเก็บและเลเยอร์เช่นเดียวกับเวิร์กสเปซเอง ในการตั้งค่าของคุณคุณจะต้องรักษาเลเยอร์ "ที่กำหนดไว้สำหรับการผลิต" และ "การทดสอบ" ในพื้นที่ทำงานแยกต่างหากซึ่งจะทำให้สิ่งนี้เป็นเรื่องง่ายในอนาคต

/layergroups/your_layer_group.xml - หากคุณมีกลุ่มที่คุณต้องการคัดลอก

styles\stylename.sld- styles\stylename.xml- นี่คือสิ่งที่อาจเป็นเรื่องยาก หากคุณเปลี่ยนชื่อสไตล์ตั้งแต่สร้างขึ้นชื่อ XML และชื่อ SLD จะไม่เหมือนเดิม XML จะเป็นชื่อปัจจุบันชื่อ SLD จะเป็นอย่างอื่นเมื่อคุณสร้างขึ้นมา คุณสามารถดูใน XML เพื่อดูไฟล์ SLD ที่อ้างอิง

เมื่อคัดลอกเสร็จแล้วให้รีสตาร์ท GeoServer

การใช้วิธีการนี้ก่อนหน้านี้ฉันได้ถ่ายโอนเลเยอร์หลายสิบรายการด้วยตนเองและสไตล์มากกว่า 200 แบบพร้อมปัญหาเล็กน้อย


2
อีกวิธีหนึ่งหากการย้ายดาต้าสโตร์และเลเยอร์ไม่ทำงานเพียงแค่ล้างแท็กรหัสผ่านใน datastore.xml ในแต่ละโฟลเดอร์ดาต้าสโตร์ฉันมีข้อผิดพลาดเมื่อย้ายจาก 2.8 เป็น 2.9 เนื่องจากปัญหาในแฮชของรหัสผ่าน
geogeek

ฉันต้องใช้สไตล์เริ่มต้นใหม่สำหรับเลเยอร์ที่ไม่มีสไตล์ที่กำหนดเอง แต่ฉันไม่พบปัญหาอื่นใด
Stijn

@geogeek มันเป็นไปได้ที่จะแทนที่สตริงชอบด้วยcrypt2:YOUR_ENCRYPTED_PASSWORD_HERE plain:YOUR_PASSWORD_HEREไม่แนะนำโดยทั่วไป แต่อาจมีประโยชน์สำหรับการทดสอบและการทดสอบ
SeldomNeedy

ฉันใช้คำสั่งเดียวกันกับ geoserver 2.15 ฉันเห็นพื้นที่ทำงานและร้านค้า แต่เลเยอร์ไม่มาใช่ไหม ผมทำอะไรผิดหรือเปล่า?
ncelik

ในฐานะผู้ติดตามการเพิ่มplain:คำนำหน้าใน "datastore.xml" -file จะบอก Geoserver ให้ใช้รหัสผ่านธรรมดา หากไม่มีคำนำหน้า (เพียงแค่รหัสผ่านเอง) Geoserver จะทำให้รหัสผ่านในไฟล์สับสนเมื่อบันทึกการตั้งค่าถัดไป ฉันไม่แน่ใจว่าจะเกิดอะไรขึ้นในกรณีนี้หากรหัสผ่านมี:เครื่องหมาย (โคลอน) อยู่ในนั้น
SeldomNeedy
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.