ConfigMap和Secret:配置应用程序
ConfigMap
向容器传递命令行参数
在 Docker 中定义命令与参数
下面是 Dockerfile 中的指令 ENTRYPOINT 和 CMD。
| 指令 | 解释 |
|---|---|
| ENTRYPOINT | 容器启动时调用的命令 |
| CMD | 传递给 ENTRYPOINT 指定命令的参数 |
构建带参数的程序(date:args)
编写脚本 date.sh
#!/bin/sh
INTERVAL=$1
while :
do
echo $(date)
sleep $INTERVAL
done
编写 Dockerfile
FROM busybox
ADD date.sh /date.sh
RUN chmod +x /date.sh
ENTRYPOINT ["/date.sh"]
CMD ["1"]
参数默认值为 1,在运行容器可以设置参数覆盖默认值。
构建镜像
docker build -t wangjunjian/date:args .
在 Docker 中覆盖命令和参数
使用 Docker 运行镜像来设置命令和参数
docker run [--entrypoint=] <image> [arg1, arg2, arg3]
启动镜像 $ docker run wangjunjian/date:args Tue Aug 3 13:08:04 UTC 2021 Tue Aug 3