[英]Can't access Wordpress installed in Docker container
Docker 新手并且不完全理解它,如果我的表达令人困惑/错误,请耐心等待。 我在 Azure 上有一个分配了公共 IP 地址的 Ubuntu 机器。 然后我把腻子放进盒子里并安装apache、php。 我还安装了 Docker 和 Docker-compose。 我正在按照此官方教程安装 wordpress(在端口 8000 上)。 安装完成后,我可以在http://xxx.xxx.xxx.xxx看到默认的 apache ubunto 页面,但我无法访问http://xxx.xxx.xxx.xxx:8000的网站。 无法访问它的原因是什么? 我找不到任何相关教程,因为大多数教程都是在本地主机上进行的,因此不可参考。 这是我的 docker-compose.yml 文件:
version: '3.3'
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: wordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
volumes:
db_data:
docker ps 输出如下:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
07d669b9f95e phpmyadmin/phpmyadmin "/run.sh supervisord…" 10 hours ago Up 10 hours 9000/tcp, 0.0.0.0:8080->80/tcp wp_phpmyadmin_1
5ff939494739 wordpress:latest "docker-entrypoint.s…" 11 hours ago Up 11 hours 0.0.0.0:8000->80/tcp wp_wordpress_1
479826f7cfb8 mysql:5.7 "docker-entrypoint.s…" 11 hours ago Up 11 hours 3306/tcp, 33060/tcp wp_db_1
解决方案:最后我设法通过在 Azure 中打开端口使其工作。
只要端口公开并且您可以在主机中看到内容,问题就不在于docker
问题可能出在主机上,它应该公开 8000 端口
我对 Azure 不熟悉,但我猜默认情况下会暴露 80 端口,因此请尝试更改
ports:
- "8000:80"
到
ports:
- "80:80"
并使用端口 80(这是 http 默认)调用机器
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.