docker 使用的一些基本参数


1、关于docker对cpu、内存的限制

docker run --cpus 2 (--cpu-period=100000和--cpu-quota=200000 ),其中 2代表 后项除前项 的值 ,可以为小数。 代表使用2个cpu的比例,不是指定2个cpu , 例如4C的机器,可以使用200% 的使用率 。

1.1)--cpuset-cpus=<value>:该参数可用于限制容器使用指定的cpu,如果有多个cpu,可逗号分隔或者使用连字符进行指定,比如1,3代表使用第1和第3个cpu,0-3代表使用编号为0,1,2,3的cpu。

1.2)--cpu-shares=<value>:该参数可设置容器使用cpu的权重,默认值是1024,不设置或者将其设置为0都将使用默认值,数值越大权重越大。这是一个软限制,只有cpu资源不足时才生效。当cpu资源充足时,各个容器可以在不超过资源限制的条件下使用cpu资源;当cpu资源不足,并有多个容器竞争cpu资源时,系统会根据每个容器的权值和所有容器权值的比例来给容器分配 cpu使用比例,如系统中只有一个容器实例,不设置该参数或设置为--cpu-shares=1024或任意参数值,该容器将可以最大化使用cpu ,如果系统中有多个容器实例,容器1不设置,容器2设置为--cpu-shares=1024,容器2设置--cpu-shares=2048,那么当资源cpu不充足时,cpu比例按照1:1:2分配, 但当cpu充足时,每个容器可以最大化使用cpu资源。

1.3) docker run -m 4g 该参数用于限制容器使用的内存。

1.4)--memory-swap =<value>:内存+交换分区的总限制,只有设置了-m之后,这个参数才有意义。如果--memory=300m,--memory-swap=1g,那么容器可以使用300m的内存和700m的交换分区;如果设置的数值和--memory一样,那么容器无法使用交换分区;如果该值没有设置,容器最多可以使用和--memory一样大的交换分区;如果该值设置为0,那么相当于没有设置;如果设置为-1,可以使用的交换分区大小无限制。

 

2、docker -v参数 , 用于将宿主机目录挂载到容器实例中。

docker -d run -v /opt/sz/data:/opt/data

 

3、dockerfile ARG参数 , 用于构建时将参数值带入dockerfile 。

例如dockerfile 定义: ARG JARF

docker build --build-arg JARF=v01

4、--name sys082201 -h sys01 --privileged=true --restart=always

--name: 用于指定容器实例名称

-h : 用于指定容器实例主机名

--privileged: 用于 获取实例最高权限

--restart:用于实例自动启动

5、dockerfile WORKDIR的作用

WORKDIR指令用于设置在Docker容器中的工作目录 ,注意:这里是指容器中的,也就是在容器中进行的操作,默认将以这个目录为工作目录。

6、dockerfile COPY与ADD命令

COPYADD 都可以把local的一个文件复制到镜像里,如果目标目录不存在,则会自动创建 。

ADD与COPY有一点不同地方是:如果复制的是一个gzip等压缩文件时,ADD会帮助我们自动去解压缩文件。

7、通过dockerfile构建为镜像操作

docker build -t kfk:v01 -f ./Dfile . 其中-t 指定镜像名称和tag , -f 用于指定dockerfile , 最后的. 前往不能丢, 代表依据当前目录环境镜像操作,例如ADD文件,该文件是这个目录等。

8、-net=host 参数

指定容器启动的网络模式, host为主机模式,绑定本机ip和端口启动实例。 如果不指定,默认是brig 模式。

9、--link 参数

该参数用于通过主机名链接 其它容器,也就是可以通过主机名找到其它容器实例的主机解析。



 



本文标签: docker 基本参数

内容版权声明:【悟空故事】部分资源来源于网络,如有侵犯您的所有权,请随时告知我们,我们将立即删除!感谢配合!

转载请注明出处:https://blog.ff56.cn/xitong/1694055387.html