Score:0

วิธีสร้างอิมเมจ docker postgres ด้วยการสนับสนุน pgcrypto sha3-512

ธง cn

ฉันต้องการสร้างอิมเมจนักเทียบท่า postgresql 11 ที่รองรับฟังก์ชันแฮช sha3-512โดยค่าเริ่มต้น อิมเมจนักเทียบท่าอย่างเป็นทางการของ postgres ไม่รองรับสิ่งนี้ ฉันมีระบบที่ใช้อิมเมจนักเทียบท่าอย่างเป็นทางการอยู่แล้ว ฉันต้องการอิมเมจใหม่ที่ทำงานเหมือนกับทางการทุกประการ ยกเว้นว่ามันรองรับฟังก์ชันแฮชเหล่านี้ ความคิดของฉันคือการสร้างสำเนาของ Dockerfile อย่างเป็นทางการและแก้ไข

ตามส่วนบันทึกการกำหนดค่าที่นี่: https://www.postgresql.org/docs/11/pgcrypto.html#id-1.11.7.34.10 ฟังก์ชันแฮช SHA224/256/384/512 ได้รับการสนับสนุนเฉพาะเมื่อกำหนดค่า postgresql และสร้างด้วย --ด้วย-openssl

ฉันได้คัดลอก Dockerfile และสคริปต์จุดเข้าใช้งานจากที่นี่:

https://github.com/docker-library/postgres/tree/master/11/stretch

แล้วฉันก็ติดอยู่ ฉันไม่รู้ว่าจะเพิ่ม "--with-openssl" ได้อย่างไรหรือที่ไหน ฉันสงสัยว่าการกำหนดค่าและการคอมไพล์เกิดขึ้นที่ส่วนนี้:

# สร้างไฟล์ .deb จากแพ็กเกจต้นทางของอัปสตรีม (ซึ่งตรวจสอบโดย apt-get)
            ฉลาดรับการปรับปรุง; \
            apt-get build-dep -y \
                postgresql-common pgdg-keyring \
                "postgresql-$PG_MAJOR=$PG_VERSION" \
            ; \
            DEB_BUILD_OPTIONS="ไม่เลือกคู่ขนาน=$(nproc)" \
                apt-get แหล่งที่มา -- คอมไพล์ \
                    postgresql-common pgdg-keyring \
                    "postgresql-$PG_MAJOR=$PG_VERSION" \
            ; \

แต่ ณ จุดนี้ ฉันไม่รู้ว่าต้องทำอย่างไร หรือต้องเปลี่ยนแปลงอะไร

ข้อผิดพลาดของตัวเองเป็นเช่นนี้

เลือกไดเจสต์ ('ทดสอบ', 'sha3-512')
ข้อผิดพลาด SQL [22023]: ข้อผิดพลาด: ไม่สามารถใช้ "sha3-512": ไม่มีอัลกอริทึมแฮชดังกล่าว

ดูเหมือนว่าจะไม่มีการเพิ่มอัลกอริทึมแฮชเพิ่มเติม:

postgres=# \df ไดเจสต์
                       รายการฟังก์ชั่น
 สคีมา | ชื่อ | ชนิดข้อมูลผลลัพธ์ | ชนิดข้อมูลอาร์กิวเมนต์ | พิมพ์ 
--------+------+---------+------------ ------+------
(0 แถว)

postgres=# เลือก * จาก pg_available_extensions โดยที่ name='pgcrypto';
ชื่อ |default_version|installed_version|ความคิดเห็น |
--------+------------------------+--------+------ ----------------+
pgcrypto|1.3 |1.3 |ฟังก์ชั่นการเข้ารหัสลับ|
cn flag
หากฉันเริ่มอิมเมจอย่างเป็นทางการและดำเนินการ "pg_config" ในนั้น แสดงว่า "--with-openssl" อยู่ใน CONFIGURE แต่อัลกอริทึม sha3-512 ไม่สามารถใช้งานได้อยู่ดี ดังนั้นปัญหาอาจไม่ใช่ตัวเลือก --with-openssl ที่ขาดหายไป แต่แล้วอะไรล่ะ?
Score:0
ธง cn

หลังจากลองใช้วิธีแก้ปัญหาที่เป็นไปได้ต่างๆ (ด้วยความช่วยเหลือ) ฉันพบว่า postgres:11.14-เป้า ทำงานได้อย่างถูกต้องและมีฟังก์ชันแฮชของ openssl ทั้งหมด ที่น่าสนใจคือค่าเริ่มต้น โพสต์เกรส:11 กำลังคิดถึงพวกเขา

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา