Score:0

นักเทียบท่าเขียนด้วย nginx และ nextcloud FPM หยุดรับการเชื่อมต่อ https

ธง si

ฉันมีการตั้งค่าที่ค่อนข้างมาตรฐานโดยมี nginx เป็นส่วนหน้าของเว็บ (พร้อมใบรับรอง https และอื่น ๆ ) และแบ็กเอนด์ FPM ของ nextcloud การติดตั้งทั้งหมดมีปริมาณการใช้งานต่ำมาก เนื่องจากฉันเป็นคนเดียวที่ใช้

เมื่อถึงจุดหนึ่ง https หยุดทำงาน ทุกการเชื่อมต่อจากภายนอกจะส่งผลให้หมดเวลาหรือการเชื่อมต่อถูกปฏิเสธ ในสถานการณ์นี้ ดูเหมือนว่า nextcloud กำลังทำงานและ nginx ไม่ทำงาน ฉันคิดว่ามันอาจเกี่ยวข้องกับการประหยัดพลังงานบนโฮสต์ของฉัน แต่ก็ไม่เป็นเช่นนั้น เนื่องจากคอนเทนเนอร์อื่นๆ ทั้งหมดในโฮสต์เดียวกันทำงานได้ดี สิ่งที่ตลกคือมีวิธีง่ายๆ ที่จะทำให้มันกลับมาใช้งานได้อีกครั้ง และมันคือการเปิดเชลล์บนโฮสต์และทำ:

ซีดี $NEXTCLOUD_DIRECTORY

โดยที่ NEXTCLOUD_DIRECTORY เป็นไดเร็กทอรีพื้นฐานสำหรับแอปพลิเคชัน โดยที่ทั้งไฟล์ docker-compose.yml และไดเร็กทอรีข้อมูล (อยู่ที่ $HOME/docker/nextcloud-letsencrypt)

ฉันแค่ไม่เข้าใจว่าทำไมสิ่งนี้ถึงเกิดขึ้นและทำไมการดำเนินการนั้นจึงเป็นวิธีแก้ปัญหา ...

นี่คือไฟล์เขียนของฉัน:

รุ่น: '3'
  บริการ:
    จิงซ์:
      ภาพ: nginx:alpine
      พอร์ต:
        - "80:80"
        - "127.0.0.1:8443:443"
      ปริมาณ:
        - ./data/nginx:/etc/nginx/conf.d
        - ./data/certbot/conf:/etc/letsencrypt
        - ./data/certbot/www:/var/www/certbot
        - ./data/nextcloud/www:/var/www/html:ro
        - ./data/nextcloud/apps:/var/www/html/custom_apps:ro
      รีสตาร์ท: เว้นแต่จะหยุด
      คำสั่ง: "/bin/sh -c ' while :; do sleep 6h & wait $${!}; nginx -s reload; done & nginx -g \"daemon off;\"'"
    ใบรับรอง:
      ภาพ: certbot/certbot
      ปริมาณ:
        - ./data/certbot/conf:/etc/letsencrypt
        - ./data/certbot/www:/var/www/certbot
      จุดเริ่มต้น: "/bin/sh -c 'trap exit TERM; while :; do certbot ต่ออายุ; sleep 12h & wait $${!}; done;'"
      รีสตาร์ท: เว้นแต่จะหยุด
    cloud-db:
      ชื่อคอนเทนเนอร์: ${DB_CONTAINER_NAME}
      รูปภาพ: mariadb:${DB_IMAGE_TAG}
      รีสตาร์ท: เว้นแต่จะหยุด
      คำสั่ง: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
      ปริมาณ:
        ...
      สิ่งแวดล้อม:
        MYSQL_DATABASE: ${MYSQL_DATABASE}
        MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
        MYSQL_USER: ${MYSQL_USER}
        MYSQL_PASSWORD: ${MYSQL_PASSWORD}
    แอป:
     รูปภาพ: nextcloud:21-fpm-alpine
     ลิงค์:
       - ฐานข้อมูลคลาวด์
     ผู้ใช้: "1000:1004"
     ปริมาณ:
       - ./data/nextcloud/www:/var/www/html
       - ./data/nextcloud/apps:/var/www/html/custom_apps
       - ./data/nextcloud/config:/var/www/html/config
       - /mnt/usb/shared/nextcloud:/var/www/html/data
       - /mnt/usb/Expansion_2/serie:/mnt/serie:ro
       - /mnt/usb/archivio/archivio:/mnt/archivio:ro
     รีสตาร์ท: เว้นแต่จะหยุด

./data อยู่ใน root FS ภายในโฮมไดเร็กทอรีของผู้ใช้ 1,000

/mnt/usb/shared/nextcloud อยู่ในไดรฟ์ USB ext4 (ค่าเริ่มต้นของ ext4, nofail 0 0), R/W สำหรับผู้ใช้

/mnt/usb/Expansion_2 เป็นไดรฟ์ USB ex4 อีกตัว (ค่าเริ่มต้นของ ext4, nofail 0 0) ให้บริการผ่าน NC (มีการลงทะเบียนเป็นที่เก็บข้อมูลภายนอกใน NC)

Michael Hampton avatar
cz flag
คุณทำอะไรแปลก ๆ เช่นเข้ารหัสโฮมไดเร็กตอรี่ของคุณหรือไม่?
si flag
ไม่ ไม่มีอะไรแบบนั้น ฉันสังเกตเห็นว่าคอนเทนเนอร์ถูกสร้างขึ้นใหม่เมื่อฉันดำเนินการ "cd" ผลลัพธ์เหล่านี้สร้างขึ้นเมื่อไม่กี่นาทีที่ผ่านมา ฉันคิดว่ามีบางอย่างผิดปกติในการกำหนดค่าการเขียนของฉันแทนที่จะเป็น nginx หรือ nextcloud
Score:0
ธง si

ดูเหมือนว่าวิธีแก้ปัญหาคือใช้การรีสตาร์ท: เสมอแทน "เว้นแต่จะหยุด" ฉันไม่รู้จริง ๆ ว่าทำไมฉันถึงต้องการสิ่งนั้น เนื่องจากไม่มีใครหยุดคอนเทนเนอร์ ดังนั้นมันจึงควรทำงานไปเรื่อย ๆ เช่นเดียวกับคอนเทนเนอร์อื่น ๆ ที่ฉันมีในเครื่องเดียวกันที่ใช้ "เว้นแต่จะหยุด" และคงอยู่ตลอดไป

โพสต์คำตอบ

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