【发布时间】:2020-07-10 17:54:45
【问题描述】:
只有一个安装了 docker 的 ubuntu 服务器。使用
拉取 wordpress docker 图像`$ docker pull wordpress`.
然后使用
运行容器$ docker run --name my-wp -p 8080 -h 192.168.1.11 -d wordpress
检查日志:
$ docker logs my-wp
WordPress not found in /var/www/html - copying now...
Complete! WordPress has been successfully copied to /var/www/html
[Mon Mar 30 10:42:10.499346 2020] [mpm_prefork:notice] [pid 1] AH00163: Apache/2.4.38
(Debian) PHP/7.3.16 configured -- resuming normal operations
[Mon Mar 30 10:42:10.499390 2020] [core:notice] [pid 1] AH00094: Command line: 'apache2 -D
FOREGROUND'
检查正在运行的容器和端口号:
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9a06a4bb7ce5 wordpress "docker-entrypoint.s…" 22 minutes ago Up 22 minutes 80/tcp, 0.0.0.0:32769->8080/tcp my-wp
现在我尝试使用 ip 192.168.1.11:8080 和 192.168.1.11:32769 和 127.0.0.1:8080 和 127.0.0.1:32769 访问 wordpress。没有人可以打开 wordpress 页面。 请注意,我已经在主机操作系统的端口 80 上运行了一个网络服务器。
关于如何访问 wordpress 网页的任何想法?
【问题讨论】:
-
如果您根本没有修改 Wordpress 配置,它看起来仍然在侦听容器内的端口 80(默认 HTTP 端口)。这是与您的主机系统分开的网络命名空间,因此不会发生冲突。尝试将
-p 8080更改为-p 80;您也可以自己选择重新映射的端口-p 8080:80。 -
谢谢大卫。这完全是重新映射的问题。我将容器的 80 端口重新映射到主机中的 8080 端口。现在一切正常。这是工作命令:
$ docker run --name my-wp -p 8080:80 -d wordpress。感谢您指出这一点。
标签: wordpress apache docker containers