无法访问Docker容器中安装的Wordpress
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无法访问Docker容器中安装的Wordpress相关的知识,希望对你有一定的参考价值。
Docker的新手并没有完全理解它,如果我的表达混乱/错误,请耐心等待。我在Azure上有一个Ubuntu框,分配了公共IP地址。然后我把putty放进盒子并安装apache,php。我还安装了Docker和Docker-compose。我正在关注this official tutorial安装wordpress(在端口8000上)。安装完成后,我可以在http://xxx.xxx.xxx.xxx上看到默认的apache ubunto页面,但是我无法访问http://xxx.xxx.xxx.xxx:8000上的网站。无法访问它的原因是什么?我找不到任何相关的教程,因为大多数教程都是在localhost上进行的,因此不具备参考价值。这是我的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)调用计算机
以上是关于无法访问Docker容器中安装的Wordpress的主要内容,如果未能解决你的问题,请参考以下文章
docker-compose mysql 容器拒绝访问 wordpress 容器
处理docker中安装的ElasticSearch和Kibana链接失败问题:Kibana server is not ready yet