我已经遵循了对Elixir / Phoenix项目进行dockerise的指南,并且我创建了一个bash脚本,但是docker没有permssion来执行该文件。我跑了
docker-compose build
chmod u+x entrypoint.sh
docker-compose up
尽管运行命令它仍然没有权限。我做错了什么?
答案 0 :(得分:3)
最好在自定义Dockerfile中执行chmod
,构建自己的映像,然后通过docker-compose运行它,如下所示,
RUN chmod +x entrypoint.sh
直接在主机上执行此操作仅当docker compose在运行映像时将该文件作为卷绑定安装时才有效。
答案 1 :(得分:1)
如VonC所述,您可能需要创建自定义泊坞窗图像。复制图像中的文件,然后更改权限。您可以查看使用
处的入口point.sh初始化SQL Server 2017数据库的示例https://www.handsonarchitect.com/2018/01/build-custom-sql-server-2017-linux.html