Help us understand the problem. What is going on with this article?

Dockerを再起動するとwebアプリで保存した画像が消えるのを解決した

環境

  • Docker version 19.03.8, build afacb8b
  • docker-compose version 1.25.5, build 8a1c60f6
  • Java 1.8
  • SpringBoot 2.2.5.RELEASE

事象

Dockerに載せたWebアプリで画像を保存してから、
Dockerを再起動すると保存した画像ファイルが消えてしまう。

原因

名前付きボリュームのパス指定とアプリ側で画像保存するパスが異なっていた。なので、保存した画像は名前付きボリュームには保存されず、コンテナを停止したら消えてしまっていたというオチ。

DBとかのパス指定を参考に設定していたけど、アプリ側が登録する場所に
合わせないとそりゃだめだよね・・・

アプリが画像を保存する先

/static/images/xx/xxx.png

docker-compose.ymlを以下のように修正

# 修正前
volumes:
  - images:/var/itetenosuke/images

# 修正後
volumes:
  - images:/static/images

これでDocker再起動しても画像消えなくなった。

engineerlife
技術力をベースに人生を謳歌する人たちのコミュニティです。
https://community.camp-fire.jp/projects/view/280040
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away