在配置了docker-compose up --build
且包含语法Dockerfile
的{{1}}上运行脚本RUN
时,脚本或可执行文件可以自动在 Docker容器上运行,脚本或可执行文件等等可以在构建过程中自动运行。
问题:但是仅使用docker-compose
而不使用Dockerfile
可以实现相同的目标,例如运行可执行文件或脚本吗?在这种情况下,docker-compose.yml
中可能有与RUN
中的Dockerfile
类似的命令?
答案 0 :(得分:0)
您可以在docker-compose中执行的操作是通过设置“命令”来覆盖构建后执行的默认命令。
参见此处:https://docs.docker.com/compose/compose-file/#command
我认为docker-compose.yml没有类似RUN的功能。
答案 1 :(得分:0)
如果我理解您的问题,那么答案是肯定的:在您的 docker-compose.yml 文件中的容器配置中使用:
entrypoint: ["/bin/sh","-c"]
command:
- |
ls -la
echo 'hello'
或者任何你想运行的命令。