Docker for Mac Beta:无法正确链接容器
我已经尝试链接两个容器,并执行另一个在Docker工具箱版本的工具中有效的命令。
YML文件的副本:
version: '2' services: nginx: image: nginx:latest hostname: nginx links: - php ports: - "8000:80" privileged: true php: image: php:5-fpm hostname: php privileged: true
我希望能够login到Nginx容器,并能够执行PHP,即PHP的版本。
docker exec -it test2_nginx_1 bash root@nginx:/# ping php PING php (172.19.0.2): 56 data bytes 64 bytes from 172.19.0.2: icmp_seq=0 ttl=64 time=0.103 ms 64 bytes from 172.19.0.2: icmp_seq=1 ttl=64 time=0.089 ms
平安工作!
root@nginx:/# php -version bash: php: command not found
这不起作用。
login到PHP容器:
docker exec -it test2_php_1 bash root@php:/var/www/html# php -version PHP 5.6.22 (cli) (built: Jun 8 2016 17:49:08) Copyright (c) 1997-2016 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
为什么我无法在链接的容器上执行它?
为什么我无法在链接的容器上执行它?
因为“链接”(或者, 因为docker1.10,一个共同的networking )是关于通信,而不是程序。
你的nginx
容器就像一台没有安装php的单独机器。 它可以ping的php
容器,但不是本地执行什么是只安装在所述的php
机器上。