Docker OSX - 无法访问端口8080上的容器

时间:2016-03-30 14:46:30

标签: wordpress docker virtualbox docker-machine

我在OSX El Capitan上使用docker-machinedocker。我试图在这里运行Wordpress泊坞窗图像:https://hub.docker.com/_/wordpress/

我的docker-compose.yml文件如下:

wordpress:
  image: wordpress
  links:
    - db:mysql
  ports:
    - 8080:80

db:
  image: mariadb
  environment:
    MYSQL_ROOT_PASSWORD: secretpassword

我用docker-compose run wordpress启动它。一切都很好,并且可以看到容器与docker ps

一起运行
c7ade4a3944b        wordpress           "/entrypoint.sh apach"   2 minutes ago       Up 2 minutes        80/tcp              awesomebingo_wordpress_run_8
30bc8d7aaad6        mariadb             "/docker-entrypoint.s"   51 minutes ago      Up 2 minutes        3306/tcp            awesomebingo_db_1

我使用以下方法获取VM的IP地址:

docker-machine ip default

返回:

192.168.99.100

如果我尝试从浏览器访问http://192.168.99.100:8080,我会收到错误:在Firefox中无法连接。

我无法在普通终端中ping虚拟机IP地址,但如果我在Docker快速入门终端中,我能够pingnmap虚拟机的IP地址。虽然nmap仍将端口8080显示为已关闭。

任何想法在这里发生了什么?

3 个答案:

答案 0 :(得分:0)

试试这个

ports:
    - "8080:80"

正确的变体docker ps应显示在ports列中的下一个:

 0.0.0.0:8080->80/tcp 

答案 1 :(得分:0)

原来我正在使用:

docker-compose run wordpress

我需要使用:

docker-compose up

答案 2 :(得分:0)

  

启动您的图片,例如

docker run -p 8080:8080 -t wordpress
相关问题