Docker containers are not removed after a build completes

プラットフォームについて: Data Center - この記事は、Data Center プラットフォームのアトラシアン製品に適用されます。

このナレッジベース記事は製品の Data Center バージョン用に作成されています。Data Center 固有ではない機能の Data Center ナレッジベースは、製品のサーバー バージョンでも動作する可能性はありますが、テストは行われていません。サーバー*製品のサポートは 2024 年 2 月 15 日に終了しました。サーバー製品を利用している場合は、アトラシアンのサーバー製品のサポート終了のお知らせページにて移行オプションをご確認ください。

*Fisheye および Crucible は除く

症状

When running a non-detached container in Bamboo using the Docker task, and the container fails to start, the Bamboo build will fail but the Docker container is not removed on completion of the task.

The logs may contain an error related to the command being executed inside the container, but it will not hint that the container has not been removed.

Possible excessive disk usage may hint at the problem.

原因

Non-detached containers are run with the --rm argument meaning that Docker should remove them when the process exits. However, if the container is unable to start due to misconfiguration of the command to be executed in the container, Docker will not remove it. This is presumably so that the cause of the error can be diagnosed.

ソリューション

The leftover containers will not influence subsequent builds so may go unnoticed for some time. If the Docker service on the agent hasn't been restarted in a while this may lead to excessive disk usage. You can reclaim the disk space by manually removing the container using the docker rm command, for example:

docker rm my-failed-container

Of course, you should also correct any misconfigured container in a failing build.

Note: Feature request opened for the above scenarios BAM-21766 - Option to cleanup container if the Docker task failed to start it

最終更新日: 2025 年 2 月 14 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.