LoginSignup
7
2

More than 3 years have passed since last update.

DockerでINTERNAL ERROR: cannot create temporary directory!となるときの対処法

Last updated at Posted at 2020-01-21

環境 : Dockerコンテナ(mysql, Wordpress, nginx)

WordPressのブログの記事を執筆していると次のようなエラーが表示されました.

EOh8O2rU4AAWDIR.png

どうしてこのエラーが表示されたのかわかりませんが,おそらく画像をアップロードするときに失敗していたのでそれが原因ではないかと思います.

早速サーバー内に入ってDBのDockerコンテナを再起動しようとしましたが,INTERNAL ERROR: cannot create temporary directory!とエラーが表示されました.違うコンテナで試してみても同じエラーだったので,どうやらDBのDockerコンテナに問題があるのではなく,サーバーかDocker自体に問題があるようです.

とりあえず,$ free -mで今のメモリの状況を確認し,$ echo 1 > /proc/sys/vm/drop_cachesでキャッシュの解放をして空きを増やしました.
再度,コンテナを起動しようとしましたが,同じエラーのままでした.

解決方法

色々調べてこちらのstack overflowにたどり着きました.

どうやらコンテナとイメージを削除すればよさそうです.

(20/01/23追記)下記のコマンドでコンテナとイメージを全て削除できますが,まずはDockerに残ってしまている不要なものを削除しましょう(ahsgw様にコメントでご教授いただいたリンクが参考になります).ちなみに僕は,それでもできなかったので,下記コマンドを実行しました.

$ docker rm -f $(docker ps -a -q)

$ docker rmi $(docker images -q)

その後,$ docker-compose up -dすると動きました.

DBのコンテナはマウントしていましたが,サーバから操作しないだろうと思いwordpressのコンテナをマウントしていませんでした.

イメージ消したら中身のデータ消えちまうんじゃねぇか!?

と恐る恐る実行しました.
結果は,記事などのデータはDBに保存しているので,しっかり残っていましたが,Wordpressプラグインなどがやはり消えてしまっていました.

全部消えなかっただけよかったですが,マウントしておこう.....

7
2
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
2