Dockerでshell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directoryとエラーが出たときの対処法
Dec. 17, 2019, 1:32 a.m. edited Dec. 21, 2019, 4:34 a.m.症状
Dockerコンテナ(名前をhoge
とする)でマウントしていたディレクトリ(-v `pwd`:/app
としていたとする)をホスト側で削除してしまい、一応作り直したものの、docker exec -it hoge bash
で入ったときに
$ docker exec -it hoge bash
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
root@2fe6c3a26c99:.#
となってしまった。
(エラーの内容としては、そんなディレクトリなんて存在しないよ的なこと)
解決方法
https://stackoverflow.com/a/33956387 にあるようにhoge
コンテナをベースとして新しくnew_hoge_image
イメージを作り、そこからdocker run
をすればよい。つまり、
$ docker commit hoge new_hoge_image
$ docker run -it -d --name new_hoge -v `pwd`:/app new_hoge_image:latest
$ docker exec -it new_hoge bash
root@839665a8c347:/app#
ということである。
回答のコメントにあるように、作り直した新しいコンテナ名等を変えたいときはdocker rename
とかが使えそう。
Tags
- #Python (25)
- #量子力学 (20)
- #量子情報 (17)
- #Unity (11)
- #Outer Wilds (10)
- #AoE2 (8)
- #Mac (8)
- #数学 (7)
- #Quantum Zoo (6)
- #意識 (5)
- #NumPy (5)
- #Bash (5)
- #Linux (5)
- #相対論 (4)
- #シミュレーション (4)
- #Docker (4)
- #Android (4)
- #Qiskit (4)
- #Rust (3)
- #PyO3 (3)
- #GitHub (3)
- #Django (2)
- #情報理論 (2)
- #LaTeX (2)
- #AR (2)
- #Git (2)
- #iOS (2)
- #C++ (2)
- #正規表現 (2)
- #電磁気学 (1)
- #Google Drive (1)
- #Overleaf (1)
- #Let's Encrypt (1)
- #ポケモン (1)
- #AdMob (1)
- #Autoya (1)
- #docopt (1)
- #SymPy (1)
- #AWS (1)
- #Twitter (1)
- #URP (1)
- #iMovie (1)
- #論文 (1)
- #PyTorch (1)
- #C# (1)