CMD:
启动容器时指定默认执行的命令,
如果用户启动容器时候手动指定了运行的命令(作为run命令的参数),
则会覆盖掉CMD指定的命令。只能有一条CMD命令
vim Dockerfile
FROM centos:7.3.1611 RUN yum -y install curl CMD ["curl","-I","https://www.baidu.com"]
构建镜像
docker build -t huazai007/centos7:v1 。
运行镜像。手动指定了运行命令(/bin/bash)覆盖掉了CMD的命令
[root@server01 ~]# docker run --name mycentos_v1 --rm huazai007/centos7:v1
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 277 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
HTTP/1.1 200 OK
Accept-Ranges: bytes
Pragma: no-cache
Server: bfe/1.0.8.18
[root@server01 ~]# docker run -ti --name mycentos_v1 --rm huazai007/centos7:v1 /bin/bash
[root@04962decca51 /]#
ENTRYPOINT:
指定镜像的默认入口命令。
该入口命令会在启动容器时作为根命令执行,所有传入值作为该命令的参数。
只能有一条ENTRYPOINT命令
vim Dockerfile
FROM centos:7.3.1611 RUN yum -y install curl ENTRYPOINT ["curl","-s","https://www.baidu.com"]
构建镜像
docker build -t huazai007/centos7:v2 .
启动容器。将-I作为参数传给ENTRYPONIT了!
[root@server01 ~]# docker run --name mycentos_v1 --rm huazai007/centos7:v2 -I
HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
Connection: keep-alive
Content-Length: 277
Content-Type: text/html
Date: Thu, 12 Mar 2020 12:55:28 GMT
Etag: "575e1f5c-115"
Last-Modified: Mon, 13 Jun 2016 02:50:04 GMT
Pragma: no-cache
Server: bfe/1.0.8.18