5

Dockerfile次の内容の があります。

FROM <docker-registry>/<image>:latest
COPY mv setup /root/
RUN setup

を実行するdocker-compose up -dと、Docker がイメージをプルしてステップを実行します。

a を実行しdocker-compose stopて元に戻すと、docker-compose は最新のイメージを再度プルしません。新しいイメージをダウンロードする必要があるため、これは私にとって問題です。これを行う唯一の方法は、boot2docker vm を爆破して最初からやり直すことです。

4

2 に答える 2

6

コマンドを使用docker-compose pullしてリモート イメージをプルし、docker-compose buildコマンドを使用してローカル イメージをビルドしてから、 を使用docker-compose up -dしてコンテナーを再作成する必要があります。

$ cd /path/to/folder

$ cat docker-compose.yml
myapp:
  build: .
  links:
    - redis    
redis:
  image: redis

# pull lastest image
$ docker-compose pull redis

# build your image
$ docker-compose build myapp

# recreate containers
$ docker-compose up -d
于 2015-03-07T19:36:47.183 に答える
5

Docker Compose バージョン 1.5.0rc1 は、ビルド時に Dockerfiles で参照されている最新のイメージを を使用してプルできるようになりましたdocker-compose build --pull

1.5.0 以前の rc1docker-composeでは、Dockerfile サービスに強制的に最新のイメージを取得させることができませんでした。私は使用しなければなりませんでしたdocker pull <image>

新しいイメージがプルされたら、 で再構築できますdocker-compose build。イメージが変更された場合、ステップ 0 の FROM ハッシュが変更されているため、キャッシュは完全に無効にする必要があります。

于 2015-08-19T14:39:59.960 に答える