docker ENTRYPOINT上的多个命令
我正在尝试构建自定义的tcserver docker映像。但是我在启动Web服务器和tomcat时遇到了一些问题。
据我了解,我应该使用ENTRYPOINT运行我想要的命令。
问题是,是否可以使用ENTRYPOINT运行多个命令?
还是应该创建一个小的bash脚本来全部启动?
基本上我想做的是:
ENTRYPOINT /opt/pivotal/webserver/instance1/bin/httpdctl start && /opt/pivotal/webserver/instance2/bin/httpdctl start && /opt/pivotal/pivotal-tc-server-standard/standard-4.0.1.RELEASE/tcserver start instance1 -i /opt/pivotal/pivotal-tc-server-standard && /opt/pivotal/pivotal-tc-server-standard/standard-4.0.1.RELEASE/tcserver start instance2 -i /opt/pivotal/pivotal-tc-server-standard
但是我不知道这是否是一个好习惯,或者是否可行。
-
如果要在入口点运行许多命令,最好的想法是创建一个bash文件。例如
commands.sh
像这样的#!/bin/bash mkdir /root/.ssh echo "Something" cd tmp ls ...
然后,在DockerFile中,将入口点设置为
commands.sh
file(在其中执行并运行所有mand )COPY commands.sh /scripts/commands.sh RUN ["chmod", "+x", "/scripts/commands.sh"] ENTRYPOINT ["/scripts/commands.sh"]
之后,每次启动容器时。
commands.sh
将执行并运行您需要的所有命令。你可以在这里看看https://github.com/dangminhtruong/drone-
chatwork
-
Docker提交创建的图像和ENTRYPOINT
2021-02-01 关注 0 浏览112 1答案
-
使用Docker ADD命令处理多个文件
2021-02-01 关注 0 浏览73 1答案
-
Docker ENTRYPOINT和Kubernetes容器规范COMMAND之间的区别?
2021-02-01 关注 0 浏览233 1答案
-
docker-entrypoint-initdb中的MySQL脚本未执行
2021-02-01 关注 0 浏览1161 1答案
-
使用Docker-Compose,如何执行多个命令
2021-02-01 关注 0 浏览98 1答案
-
使用 Docker-Compose,如何执行多个命令
2022-03-22 关注 0 浏览26 1答案
-
如何在ENTRYPOINT数组中使用Docker环境变量?
2021-02-01 关注 0 浏览198 1答案
-
为什么我的docker-entrypoint.sh无法执行?
2021-02-01 关注 0 浏览1141 1答案
-
如何通过dockerfile在ENTRYPOINT之前执行shell命令
2021-02-01 关注 0 浏览1628 1答案
-
如何在已经存在的 Docker 容器上运行命令?
2022-03-22 关注 0 浏览65 1答案