Docker服务未运行容器

时间:2018-07-14 18:11:07

标签: node.js docker docker-compose

我需要帮助来了解为什么我的dockerfile无法正常工作。

我创建了名为hello-nodemon的图像:

FROM node:latest
ENV HOME=/src/jv-agricultor
RUN mkdir -p $HOME/
WORKDIR $HOME/
ADD package* $HOME/
RUN npm install
EXPOSE 3000
ADD . $HOME/
CMD ["npm", "start"]

它有效,因为当我运行 docker run -p 3000:3000 时,它可以完美运行。但是我想使用docker-compose.yml:

version: "3"
services:
  web:
    image: hello-nodemon
    deploy:
       replicas: 5
       resources:
         limits:
           cpus: "0.1"
           memory: 50M
      restart_policy:
        condition: on-failure
    ports:
      - "3000:3000"
    networks:
      - webnet
networks:
  webnet:

所以我使用了以下命令: docker stack deploy -c docker-compose.yml webservice 这将返回我:

ID                  NAME                MODE                REPLICAS            IMAGE                  PORTS
y0furo1g22zs        webservice_web      replicated          5/5                 hello-nodemon:latest   *:3000->3000/tcp

所以 docker service ps y0furo1g22zs 返回我:

ID                  NAME                IMAGE                  NODE                DESIRED STATE       CURRENT STATE           ERROR           PORTS
nbgq8ln188dm        webservice_web.1    hello-nodemon:latest   abner               Running             Running 4 minutes ago
rrxjwudtorsm        webservice_web.2    hello-nodemon:latest   abner               Running             Running 4 minutes ago
7qrz9gtd4fan        webservice_web.3    hello-nodemon:latest   abner               Running             Running 4 minutes ago
lljmj01zlya8        webservice_web.4    hello-nodemon:latest   abner               Running             Running 4 minutes ago
raqw3z0pdxqt        webservice_web.5    hello-nodemon:latest   abner               Running             Running 4 minutes ago

我的容器

CONTAINER ID        IMAGE                  COMMAND             CREATED             STATUS              PORTS               NAMES
6daf6afadfdc        hello-nodemon:latest   "npm start"         6 minutes ago       Up 6 minutes        3000/tcp            webservice_web.1.nbgq8ln188dmz8q8qeb60scbz
2d74f8e9a728        hello-nodemon:latest   "npm start"         6 minutes ago       Up 6 minutes        3000/tcp            webservice_web.2.rrxjwudtorsm6to56t0srkzda
e3a3a039fdf9        hello-nodemon:latest   "npm start"         6 minutes ago       Up 6 minutes        3000/tcp            webservice_web.3.7qrz9gtd4fanju4zt6zx3afsf
7f08dbdf0c8d        hello-nodemon:latest   "npm start"         6 minutes ago       Up 6 minutes        3000/tcp            webservice_web.5.raqw3z0pdxqtvkmkp00bp6tve
c6ce3762d6ae        hello-nodemon:latest   "npm start"         6 minutes ago       Up 6 minutes        3000/tcp            webservice_web.4.lljmj01zlya89gvmip5z0cf6f

但不起作用。浏览器不会拒绝但不会加载页面;正在无限搜索。 我不知道发生了什么,如果有人帮助我,我将非常感激。

1 个答案:

答案 0 :(得分:0)

这似乎仅与铬有关。我在chrome中也遇到了同样的问题,但是,当我在Firefox中打开它时,效果很好。

这是我固定Chrome的方法:

更多地考虑这一点,我认为这可能是chrome问题还是网络问题,因为我遇到的是同一问题:

这是我的解决方法:

  1. 确保您的/etc/hosts文件具有127.0.0.1 localhost(很有可能已经存在)

  2. 清除的Cookie和缓存的文件

  3. 清除主机缓存

    转到:chrome://net-internals/#dns单击清除主机缓存

  4. 重新启动Chrome

  5. 重置网络适配器 注意: 这是无意的,因此不确定是否是此修复程序的一部分,但想以防万一。

不幸的是,我不确定哪个步骤可以解决问题