새 컨테이너를 만들 때마다 컨테이너에 들어가 nginx와 php를 시작해야 합니다. 새 컨테이너를 만들 때마다 nginx와 php가 자동으로 시작되도록 하려면 어떻게 해야 하나요?
淡淡烟草味2017-05-16 13:01:56
supervisord를 사용하여 관리할 수 있습니다
supervisord를 설치하려면 먼저 컨테이너에 들어가세요. (설치 과정은 온라인에서 검색하세요)
기본 구성 파일을 /etc/supervisord.conf vim /etc/supervisord.conf
에 배치하는 것이 좋습니다. 으아아아그런 다음 /etc/supervisor/conf.d/
에 php 및 nginx에 대한 시작 명령을 추가하세요.예를 들어 nginx, vim /etc/supervisor/conf.d/nginx_super.conf를 추가하세요
으아아아그런 다음 새 이미지를 제출하세요. 예를 들면
docker commit -a "qclaogui" -m "bulabula" nginx-php:commit
docker commit -a "qclaogui" -m "bulabula" nginx-php:commit
编写新的Dokcerfile
[unix_http_server]
file=/var/run/supervisor.sock
[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
[supervisord]
nodaemon=true
[supervisorctl]
serverurl=unix:///var/run/supervisor.sock
[include]
files = /etc/supervisor/conf.d/*.conf
重新构建一个镜像
docker build -t nginx-php:v1 .
基于新构建的镜像运行容器
docker run --name test-nginx-php -p 8081:80 -d nginx-php:v1
注意这里用的是-d
docker build -t nginx-php:v1 .
🎜
🎜🎜🎜새로 빌드된 이미지를 기반으로 컨테이너를 실행합니다🎜🎜🎜
🎜docker run --name test-nginx-php -p 8081:80 -d nginx-php:v1
여기에서는 -d
매개변수가 사용됩니다🎜
🎜귀하의 상황에 따라 일반적인 해결책은 다음과 같으니 참고하시면 됩니다🎜