使用IP连接到docker集装箱
我正在运行下一个命令:
$ docker-machine ls NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS default * virtualbox Running tcp://192.168.99.100:2376 v17.06.2-ce $ docker-machine ip default 192.168.99.100
我有一些docker集装箱。 一旦运行django
,另一个postgres
和第三个弹性search。
当我运行我的django
容器时:
# python manage.py runserver 0:8000
当我使用该网站时,它正在工作:
localhost:8000/
但是,当我使用时不可用: 192.168.99.100:8000
: 192.168.99.100:8000
那里,我有浏览器消息:
此网站无法联系到
拒绝连接192.168.99.100。 尝试:检查连接
postgres
和elasticseach
容器也一样。
为什么我的docker容器没有应用default docker-machine ip
?
这听起来好像你还没有告诉Docker与你的VM交谈,并且你的容器正在你的主机上运行。
解决:
-
放下你的容器
-
运行
$ eval "$(docker-machine env default)"
,它设置下列环境variables:export DOCKER_TLS_VERIFY="1" export DOCKER_HOST="tcp://xxxx:2376" export DOCKER_CERT_PATH="/Users/<yourusername>/.docker/machine/machines/default" export DOCKER_MACHINE_NAME="default"
这告诉Docker如何与您的虚拟机交谈。
-
旋转容器备份