首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Docker组合Wordpress+mysql -可选端口

Docker组合Wordpress+mysql -可选端口
EN

Stack Overflow用户
提问于 2022-01-21 09:35:36
回答 1查看 163关注 0票数 0

默认情况下,mysql侦听端口3306和33060。由于im启动了多个实例,所以我必须提供其他端口。

我设法将第一个映射到<3306>,但是我找不到第二个wordpress参数名称的任何文档,我只是找到了DB_HOST。

你知道我怎样才能映射第二个端口吗?

代码语言:javascript
复制
version: "3.9"

services:
  db:
    image: mysql:latest
    volumes:
      - wordpress_db_data:/var/lib/mysql
    ports:
      - "8002:3306"
      - "8003:33060"
    restart: unless-stopped
    environment:
      MYSQL_ROOT_PASSWORD: wordpress
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress

  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    volumes:
      - wordpress_data:/var/www/html
    ports:
      - "80:80"
    restart: unless-stopped
    environment:
      DB_HOST: 8002
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress
      WORDPRESS_DB_NAME: wordpress
volumes:
  wordpress_db_data: {}
  wordpress_data: {}
EN

回答 1

Stack Overflow用户

发布于 2022-01-21 09:58:34

在对接-组合创建的桥接器网络上,直接使用集装箱港口.只有在从主机连接到容器时才使用映射的端口。

由于WordPress和MySQL在同一个网络上,所以您应该使用端口3306。如果要从主机连接到数据库,则只需要将MySQL端口映射到宿主端口。

而且,WordPress没有使用端口33060连接到MySQL,所以在WordPress端没有参数。

下面是一个应该工作的坞-撰写文件

代码语言:javascript
复制
version: "3.9"

services:
  db:
    image: mysql:latest
    volumes:
      - wordpress_db_data:/var/lib/mysql
    restart: unless-stopped
    environment:
      MYSQL_ROOT_PASSWORD: wordpress
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress

  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    volumes:
      - wordpress_data:/var/www/html
    ports:
      - "80:80"
    restart: unless-stopped
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress
      WORDPRESS_DB_NAME: wordpress
volumes:
  wordpress_db_data: {}
  wordpress_data: {}

注意,我已经删除了数据库上的端口映射,因为WordPress不需要它们才能工作。如果需要从主机连接到数据库,只需将它们添加回。通常3306端口就足够了。33060很少使用,AFAIK。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70799138

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档