Score:0

เชื่อมต่อกับฐานข้อมูล postgres ที่อยู่เบื้องหลัง nginx reverse-proxy โดยใช้ docker container

ธง de

ฉันได้ตั้งค่าคอนเทนเนอร์ฐานข้อมูล postgres แล้วและสามารถเชื่อมต่อและสอบถามโดยตรงโดยใช้พอร์ต 5434 ที่เผยแพร่

เป้าหมายคือการปรับใช้ฐานข้อมูลทดสอบในภายหลังและเข้าถึงผ่าน nginx reverse proxy ฉันไม่รู้ว่าวิธีใดดีที่สุดในการเชื่อมต่อกับฐานข้อมูลทดสอบที่ปรับใช้ กรุณาแนะนำ.

ฉันพยายามเชื่อมต่อกับฐานข้อมูล postgres ผ่าน nginx reverse proxy โดยใช้คอนเทนเนอร์ในเครื่อง

ใช้คำสั่ง:

psql -h localhost -p 5435 -U postgres database_name_container_test

Nginx แสดงข้อผิดพลาด:

พร็อกซีย้อนกลับ | 29/10/2021 20:06:57 [ข้อมูล] 32#32: *17 ไคลเอนต์ 172.25.0.1:56630 เชื่อมต่อกับ 0.0.0.0:5435
พร็อกซีย้อนกลับ | 29/10/2021 20:06:57 [ข้อผิดพลาด] 32#32: *17 การเชื่อมต่อ() ล้มเหลว (111: การเชื่อมต่อถูกปฏิเสธ) ขณะเชื่อมต่อกับอัปสตรีม ไคลเอนต์: 172.25.0.1 เซิร์ฟเวอร์:
0.0.0.0:5435, อัปสตรีม: "172.25.0.3:5434", ไบต์จาก/ถึงไคลเอ็นต์:0/0, ไบต์จาก/ถึงอัปสตรีม:0/0

nginx.conf:

ลำธาร {    
    ฐานข้อมูลต้นน้ำ_test {
        เซิร์ฟเวอร์ postgres_test:5434;
    }
    เซิร์ฟเวอร์ {
        ฟัง 5435 so_keepalive=เปิด;
        proxy_pass ฐานข้อมูล_test;

    }
}

test_db นักเทียบท่าเขียน:

บริการ:
  postgres_test:
    ชื่อคอนเทนเนอร์: postgres_test
    ภาพ: postgis/postgis
    รีสตาร์ท: เสมอ
    เปิดเผย:
      - 5432
    พอร์ต:
      - 5434:5432
    ปริมาณ:
      - ./backup:/backup
      - ./postgres-init-db.sh:/docker-entrypoint-initdb.d/postgres-init-db.sh
      - postgres_test_data:/var/lib/postgresql/data
    env_file:
      - ./.env.postgres
    เครือข่าย:
      - เครือข่ายทั่วไป

ปริมาณ:
  postgres_test_data:

เครือข่าย:
  เครือข่ายทั่วไป:
    ภายนอก:
      ชื่อ: เครือข่ายทั่วไป

reverse-proxy docker-compose:

เครือข่าย:
  เครือข่ายทั่วไป: #name ในไฟล์ docker-compose นี้
    ชื่อ: เครือข่ายทั่วไป # ชื่อจริงของเครือข่าย

บริการ:

  จิงซ์:
    รูปภาพ: nginx:1.20.1
    ปริมาณ:
      - ./nginx.conf:/etc/nginx/nginx.conf:ro
    พอร์ต:
      - 80:80
      - 443:443
      - 5435:5435
    container_name: พร็อกซีย้อนกลับ
    เครือข่าย:
      - เครือข่ายทั่วไป

นอกจากนี้ ฉันได้ตรวจสอบไฟล์คอนฟิกูเรชัน postgres แล้ว ดูเหมือนว่าจะถูกต้อง:

แมว postgresql.conf | grep Listen_addresses
ฟัง_ที่อยู่ = '*'


แมว pg_hba.conf | โฮสต์ grep
โฮสต์ md5 ทั้งหมดทั้งหมด

โพสต์คำตอบ

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