ฉันยังใหม่กับ Docker และพยายามอย่างดีที่สุดที่จะคิดออกทุก ๆ ส่วน แต่ต้องดิ้นรนอย่างมากในการเริ่มต้น gunicorn และ nginx ด้วย Dockerfile ของฉัน
เมื่อใดก็ตามที่ฉันเพิ่มสี่บรรทัดสุดท้าย คอนเทนเนอร์จะไม่บูตและล้มเหลวโดยไม่มีข้อความแสดงข้อผิดพลาดเลย
จากหลาม:3.9-บัสเตอร์
เปิดเผย 80
RUN ปรับปรุง apt
RUN apt อัพเกรด
RUN apt ติดตั้ง nginx python3 python3-pip git swig python3-dev build-essential libmagic-dev -y
RUN apt ติดตั้ง ffmpeg -y
เรียกใช้ mkdir /opt/xxx
RUN git โคลน https://xxx:[email protected]/xxx/backend.git /opt/xxx/
เรียกใช้ mkdir /root/d12f
RUN python3 -m pip install --upgrade pip
คัดลอก .env /opt/xxx/xxx/.env
เรียกใช้การติดตั้ง pip3 -r /opt/xxx/requirements.txt
RUN pip3 ติดตั้ง gunicorn
RUN git clone https://xxx:[email protected]/xxx/configs.git /root/configs/
RUN cp /root/configs/nginx/default /etc/nginx/sites-available/.
RUN mkdir /var/log/ขึ้นฉ่าย/
CMD /usr/sbin/nginx -c /etc/nginx/nginx.conf
CMD /usr/local/bin/celery -A xxx --workdir /opt/xxx ผู้ปฏิบัติงาน --loglevel=INFO -P prefork &
CMD /usr/local/bin/celery -A xxx --workdir /opt/xxx จังหวะ --schedule=/tmp/celerybeat-schedule --loglevel=INFO
CMD /usr/bin/gunicorn --chdir /opt/xxx --conf xxx:gunicorn_conf xxx:wsgi
งานสร้างทำงานได้ตามที่คาดไว้ แต่ทำงานด้วย docker run -p 80:80 xxx:latest ไม่ใช่