Docker容器不在虚拟机上运行
我是Docker的新手,我正在关注Docker站点上的“入门”文档。
我试图在虚拟机上运行3个容器。 OS:CentOS 7.3 Docker:17.03.1-ce
我跟着第一部分,可以在虚拟机内的容器上运行hello-world。
然后我转到Docker撰写的例子。 我有以下目录结构:
home | - docker-compose.yml | - docker-test | - app.py - Dockerfile - requirements.txt
docker-test下的文件来自docker网站上的python应用程序示例。
用docker-compose,我试图运行hello-world示例的3个容器。
我的docker-compose.yml:
version: "3" services: web: image: hello-world deploy: replicas: 3 resources: limits: cpus: "0.1" memory: 50M restart_policy: condition: on-failure ports: - "80:80" networks: - webnet networks: webnet:
然后我运行下面的命令:
sudo docker swarm init sudo docker stack deploy -c docker-compose.yml getstartedlab sudo docker stack ps getstartedlab shows: ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS iytr4ptz3m8l getstartedlab_web.1 hello-world:latest <node1> Shutdown Complete 16 minutes ago s5t41txo05ex getstartedlab_web.2 hello-world:latest <node2> Shutdown Complete 16 minutes ago 91iitdnc49fk getstartedlab_web.3 hello-world:latest <node3> Shutdown Complete 16 minutes ago
但是,sudo docker ps显示没有容器,当我curl http:// localhost:80 ,它不能连接。
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
我错过了什么?
您docker-compose.yml
文件表示, web
服务应该使用hello-world
映像,它只是在运行时输出消息并退出,导致所有容器停止运行。 据推测,你打算改为使用build立docker-test/
创build的图像; 要做到这一点,只需将image: hello-world
replace为image: hello-world
line with build: docker-test
。
- 调用从quickstart.cloudera / 172.17.0.2到quickstart.cloudera:8020连接exception失败:java.net.ConnectException:连接被拒绝
- 有没有什么办法在docker-compose.yml中禁用服务
- Docker使用Docker文件创build镜像“Ubuntu 14.04”
- 我的Docker容器没有IP地址。 为什么?
- Guzzle和XDebug超时
- 如何在链接的docker容器中执行程序?
- 我应该容纳一个需要16个vCPU的独立命令行或terminal应用程序吗?
- 无法在Docker容器中执行二进制文件(“Operation not permitted”)
- 无法在Docker中使用“umount”卸载设备