我按照这里的说明在Docker中创建一个wordpress站点:http://www.sitepoint.com/how-to-use-the-official-docker-wordpress-image/
1.拉并运行mysql映像: docker run -name wordpressdb -e MYSQL_ROOT_PASSWORD=password -e MYSQL_DATABASE=wordpress -d mysql:5.7
2.拉并运行wordpress映像并将mysql容器链接到它: docker run -e WORDPRESS_DB_PASSWORD=password -d -name wordpress - link wordpress -e:mysql wordpress
和我可以看到这两个容器在运行:
和我可以检查wordpress容器并尝试获取ip和端口:
此外,当我检查mysql容器时,无法使用主机/ip登录mysql浏览器。
*编辑-添加-p *
我使用-p运行wordpress容器
*
********************update**********************
*我终于成功了*
最后,如果我运行带有特定ip的容器(例如-p命令中的127.0.0.1 ):,那么它就可以工作了。
-p 127.0.0.1:8080:80
它不起作用
如果我不指定ip,或者使用0.0.0.0作为ip,它将工作:
-p 0.0.0.0:8080:80
发布于 2015-08-26 09:38:18
我在你的docker inspect
里看到了“docker inspect
”。
如果不将任何端口映射到某个主机,则无法访问所述端口。
以"查看web应用程序容器“为例。
这些文件确实包括:
docker run -e WORDPRESS_DB_PASSWORD=password -d --name wordpress --link wordpressdb:mysql -p 127.0.0.2:8080:80 -v "$PWD/":/var/www/html wordpress
注意-p 127.0.0.2:8080:80
部分。
正如GHETTO.CHiLD提到的在评论中,访问服务的url将使用码头机器$(docker machine ip):8080
的ip。
正如OP提到的,使用广播映射更容易:
-p 8080:80
=> $(docker-machine ip):8080
工厂
https://stackoverflow.com/questions/32222890
复制相似问题