7
8

More than 3 years have passed since last update.

Django on Dockerの環境づくりの記事を見ながら構築してたら途中でERROR: for django Cannot start service django: OCI runtime create failed: container_linux.go:349: starting container process caused "exec: \"/usr/src/app/entrypoint.sh\": permission denied": unknownと出たので解決した

Posted at

エラー内容

ERROR: for django  Cannot start service django: OCI runtime create failed: container_linux.go:349: starting container process caused "exec: \"/usr/src/app/entrypoint.sh\": permission denied": unknown

環境

Mac OS Catalina 10.15.4

経緯

DockerでDjangoの開発環境を再構築!!!!

を参考にDjango REST Frameworkの環境を構築していた所、Djangoの環境をDocker上にcomposeしようとしたら以上のエラー内容が出てきたのでメモ用に記事を書いておきます。

状況としては、DjangoとpostgreSQL、nginxのDockerfileを書いた後にentrypoinst.shを作成し、DjangoディレクトリのDockerfile

backend/containers/django/Dockerfile
# これ
COPY ./entrypoint.sh /usr/src/app/entrypoint.sh

COPY . /usr/src/app/

# これ
ENTRYPOINT ["/usr/src/app/entrypoint.sh"]

のコメントアウトを消して再び

$ docker-compose up -d --build

コマンドを叩くと冒頭のエラーが出ました。

手っ取り早い解決策としては

Error: Starting container process caused “exec: \”/docker-entrypoint.sh\“: permission denied”

この記事を参考にしました。
エラー内容的にも権限が与えられていないのが原因とはわかっていたのですが、早く解決するためにググりました。

結論としてはDjangoディレクトリで

$ chmod 755 entrypoint.sh

で権限を与え、再び

$ docker-compose up -d --build

してあげると無事にDockerfileの変更が反映されます。

Dockerはいざ自分で触ると分からないことが多くて触るだけでも勉強になりますね。

7
8
0

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
8