dockerfile中cmd的用法
时间: 2023-07-08 07:33:41 浏览: 78
`CMD` 指令有多种用法,可以根据不同的场景选择适合的用法。
1. 执行可执行文件
如果你的容器中有可执行文件需要运行,可以使用以下方式:
```
CMD ["executable", "param1", "param2"]
```
其中,`executable` 是可执行文件的名称,`param1` 和 `param2` 是可执行文件所需要的参数。
例如,如果你的容器中有一个 Python 脚本需要运行,你可以这样写:
```
CMD ["python", "app.py"]
```
2. 在 /bin/sh 中执行命令
如果你需要在容器中执行一些命令,可以使用以下方式:
```
CMD command param1 param2
```
其中,`command` 是需要执行的命令,`param1` 和 `param2` 是命令所需要的参数。
例如,如果你想在容器启动时运行一个 echo 命令,你可以这样写:
```
CMD echo "Hello, world!"
```
3. 提供给 ENTRYPOINT 的默认参数
如果你使用了 `ENTRYPOINT` 指令指定了容器的入口点,则可以使用以下方式为入口点指定默认参数:
```
CMD ["param1", "param2"]
```
其中,`param1` 和 `param2` 是入口点所需要的参数。
例如,如果你的容器入口点是一个 Python 脚本,你可以这样写:
```
ENTRYPOINT ["python", "app.py"]
CMD ["--debug"]
```
这样,在启动容器时如果不指定参数,则默认会以 `--debug` 参数启动 app.py 脚本。如果指定了其他参数,则会覆盖 `CMD` 中的默认参数。
阅读全文