簡體   English   中英

Docker compose不會為鏈接服務設置公開端口80

[英]Docker compose doesn't expose port 80 for a Linked Service setup

這是docker compose文件

version: '3.3'

services:
   db:
     image: mysql:5.7
     volumes:
       - blog-vol:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: mysqlpass
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wpuser
       MYSQL_PASSWORD: mysqluserpass

   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "80:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wpuser
       WORDPRESS_DB_PASSWORD: mysqluserpass
volumes:
    blog-vol:

我像平常一樣提起它

docker-compose up -d

由於某種原因, http:// localhost (端口80)或http:// my_private_ip (端口80)啟動時無法解析。

但是,當我將上面的“端口”配置更改為

ports:
 -"8000:80"

http:// localhost:8000http:// my_private_ip:8000都可以工作。 不知道端口80發生了什么。我確實看到它可用。 我通過運行nginx實例來測試端口80

docker run -p 80:80 -d nginx

這很好地暴露了端口80上的服務。我不確定上面的docker-compose配置是怎么回事。 我在這里想念什么嗎?

問題出在官方Docker映像中的默認Wordpress配置。 我公開了上述MySQL實例的端口,並連接到數據庫服務器。 我檢查了WP配置,以了解它具有服務器運行所在位置(包括端口)的固定配置。 我對此進行了更新,一切開始按預期工作!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM