docker-compose で既存のイメージを更新するにはどうすればいいですか? 質問する

docker-compose で既存のイメージを更新するにはどうすればいいですか? 質問する

複数のマイクロサービスがあり、開発デプロイメントに docker-compose を使用しています。マイクロサービスのコード ベースに変更があった場合、CI ジョブをトリガーして再デプロイします。これを行うためのスクリプトを以下に示します。ただし、そのたびにすべてのイメージを最初から構築してから実行する必要があります。この操作をすべて実行すると、イメージが作成されますanonymous。そのため、最後のスクリプトを使用してイメージを削除します。このプロセスをより実用的にするには、どのような方法がありますか? 既存のイメージを削除せずに、新しい変更で更新する方法はありますか?

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

追加情報: 私は使用していますgitlab-ci

ベストアンサー1

Docker コンテナは一時的なものとして設計されています。既存のコンテナを更新するには、古いコンテナを削除して新しいコンテナを起動します。したがって、従っているプロセスは正しいものです。

コマンドを次のように簡略化できます。

docker-compose pull
docker-compose up --force-recreate --build -d
docker image prune -f

おすすめ記事