相关疑难解决方法(0)

Docker-compose:npm安装成功后,卷中没有node_modules

我有一个具有以下服务的应用程序:

  • web/ - 在端口5000上保存并运行python 3 flask Web服务器.使用sqlite3.
  • worker/- 有一个index.js文件,它是队列的工作者.Web服务器使用json API over port与此队列交互9730.工人使用redis进行存储.工作人员还将数据本地存储在文件夹中worker/images/

现在这个问题只涉及到了worker.

worker/Dockerfile

FROM node:0.12

WORKDIR /worker

COPY package.json /worker/
RUN npm install

COPY . /worker/
Run Code Online (Sandbox Code Playgroud)

docker-compose.yml

redis:
    image: redis
worker:
    build: ./worker
    command: npm start
    ports:
        - "9730:9730"
    volumes:
        - worker/:/worker/
    links:
        - redis
Run Code Online (Sandbox Code Playgroud)

当我运行时docker-compose build,一切都按预期工作,所有npm模块都/worker/node_modules按照我的预期安装.

npm WARN package.json unfold@1.0.0 No README data

> phantomjs@1.9.2-6 install /worker/node_modules/pageres/node_modules/screenshot-stream/node_modules/phantom-bridge/node_modules/phantomjs
> node install.js

<snip>
Run Code Online (Sandbox Code Playgroud)

但是当我这样做时docker-compose up,我看到了这个错误:

worker_1 …
Run Code Online (Sandbox Code Playgroud)

node.js docker ubuntu-14.04 docker-compose

155
推荐指数
10
解决办法
7万
查看次数

如何使用docker-compose更新现有图像?

我有多个微服务,我anonymous用于开发部署.当微服务代码库发生一些变化时,我会触发ci job来重新部署它们.我有以下脚本来做到这一点.但每次我必须从头开始构建所有图像然后运行它们.完成所有这些操作后,我有了gitlab-ci图像.所以我使用最后一个脚本删除它们.你建议什么使这个过程更实用?有没有办法更新现有图像而不用新的更改删除它?

- docker-compose build
- docker-compose down
- docker-compose up -d --force-recreate
- docker rmi $(docker images -f "dangling=true" -q) -f
Run Code Online (Sandbox Code Playgroud)

附加信息:我正在使用 anonymous

docker gitlab-ci docker-compose

28
推荐指数
4
解决办法
3万
查看次数

如何使用docker-compose重建和更新容器而无需停机?

我很喜欢使用docker-compose.

例如.在我的服务器上,当我想通过微小的更改来更新我的应用程序时,我只需要git pull origin master && docker-compose restart,完美地工作.

但有时,我需要重建(例如,我添加了一个npm依赖,需要npm install再次运行).

在这种情况下,我这样做docker-compose build --no-cache && docker-compose restart.

我希望这会:

  • 创建我的容器的新实例
  • 停止现有容器(在较新的容器完成后)
  • 开始新的
  • 可选择删除旧的,但这可以手动完成

但实际上它似乎又重新启动了前者.

这是预期的行为吗?

如何构建之后处理重建并启动新的重建?

也许我错过了一个特定的命令?拥有它会有意义吗?

docker docker-compose

23
推荐指数
6
解决办法
3万
查看次数