Linux ではシステム起動時に /tmp
ディレクトリの中身がクリアされます。
しかし、docker コンテナの場合は、通常はコンテナを再起動しても /tmp
ディレクトリの中身はクリアされません。
docker コンテナで起動時に /tmp
ディレクトリの中身をクリアするには、以下のように tmpfs
ボリュームを使用する方法があります。
$ docker run --tmpfs /tmp my_image
docker compose の場合は以下のように指定します。
services:
my_service:
image: my_image
volumes:
- type: tmpfs
target: /tmp
# その他の設定
尚、docker compose で手動でボリュームを再作成したい場合は、以下のように docker compose down -v
コマンドを使用して既存のボリュームを削除し、その後 docker compose up -d
コマンドで新しいボリュームを作成してコンテナを起動します。
$ docker compose down -v
$ docker compose up -d