我正在使用這個 repo 來設定本地 wordpress 開發環境:https : //github.com/mjstealey/wordpress-nginx-docker#tldr
我劫持了docker-compose改變nginx埠,也嘗試在nginx服務器上安裝openssl和vim。但是當我執行 docker-compose up 時,nginx 服務器永遠無法正常啟動。
這是我看到的:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
57cf3dff059f nginx:latest "bash" About a minute ago Restarting (0) 14 seconds ago nginx
我嘗試在 docker-compose 中參考一個 Dockerfile,如下所示:
nginx:
image: nginx:${NGINX_VERSION:-latest}
container_name: nginx
ports:
- '8085:8085'
- '443:443'
build: .
volumes:
- ${NGINX_CONF_DIR:-./nginx}:/etc/nginx/conf.d
- ${NGINX_LOG_DIR:-./logs/nginx}:/var/log/nginx
- ${WORDPRESS_DATA_DIR:-./wordpress}:/var/www/html
- ${SSL_CERTS_DIR:-./certs}:/etc/letsencrypt
- ${SSL_CERTS_DATA_DIR:-./certs-data}:/data/letsencrypt
depends_on:
- wordpress
restart: always
請注意“build: .”這一行。這是我的 Dockerfile 的內容:
FROM debian:buster-slim
RUN apt-get update
# installing vim isn't necessary. but just handy.
RUN apt-get -y install openssl
RUN apt-get -y install vim
顯然,我做錯了什么。也許我應該直接在 docker-compose 中為 nginx 服務器定義任務?我想找到一種方法來明確區分我們的自定義和原始代碼。但也許這是不可能的。
謝謝
編輯 1
這是 Dockerfile 的樣子:
FROM nginx:latest
RUN apt-get update
&& apt-get -y install openssl
&& apt-get -y install vim
And the nginx section of the docker-compose.yml:
nginx:
#image: nginx:${NGINX_VERSION:-latest}
container_name: nginx
ports:
- '8085:8085'
- '443:443'
build: .
volumes:
- ${NGINX_CONF_DIR:-./nginx}:/etc/nginx/conf.d
- ${NGINX_LOG_DIR:-./logs/nginx}:/var/log/nginx
- ${WORDPRESS_DATA_DIR:-./wordpress}:/var/www/html
- ${SSL_CERTS_DIR:-./certs}:/etc/letsencrypt
- ${SSL_CERTS_DATA_DIR:-./certs-data}:/data/letsencrypt
depends_on:
- wordpress
restart: always
uj5u.com熱心網友回復:
我認為您可能需要更改您在 docker 檔案中使用的基本映像?:
FROM nginx:latest
然后在 docker 檔案中,因為您正在創建自己的 nginx 映像的自定義版本,您應該提供自定義名稱或標簽。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/339937.html
標籤:docker nginx docker-compose
