Docker后台进程参数-------更改Docker运行根目录的方法

Docker 后台进程参数-------更改Docker运行根目录的方法

参数介绍
--api-enable-cors=false远程API调用。
-b, --bridge=""桥接一个系统上的网桥设备到 Docker 容器里,当使用 none 可以停用容器里的网络
--bip=""使用 CIDR 地址来设定网络桥的 IP。此参数和 -b 不能一起使用。
-D, --debug=false开启Debug模式。例如:docker -d -D
-d, --daemon=false开启Daemon模式。
--dns=[]设置容器使用DNS服务器。例如: docker -d --dns 8.8.8.8
-dns-search=[]设置容器使用指定的DNS搜索域名。如: docker -d --dns-search example.com
--exec-driver="native"设置容器使用指定的运行时驱动。如:docker -d -e lxc
-G, --group="docker"在后台运行模式下,赋予指定的Group到相应的unix socket上。注意,当此参数 --group 赋予空字符串时,将去除组信息
-g, --graph="/var/lib/docker"设置Docker运行时根目录
-H, --host=[]设置后台模式下指定socket绑定,可以绑定一个或多个 tcp://host:port, unix:///path/to/socket, fd://* 或 fd://socketfd。如:$ docker -H tcp://0.0.0.0:2375 ps 或者$ export DOCKER_HOST="tcp://0.0.0.0:2375"$ docker ps
-icc=true设置启用内联容器的通信。
--ip="0.0.0.0"设置容器绑定IP时使用的默认IP地址
--ip-forward=true设置启动容器的 net.ipv4.ip_forward
--iptables=true设置启动Docker容器自定义的iptable规则
--mtu=0设置容器网络的MTU值,如果没有这个参数,选用默认 route MTU,如果没有默认route,就设置成常量值 1500。
-p, --pidfile="/var/run/docker.pid"设置后台进程PID文件路径。
-r, --restart=true设置重启之前运行中的容器
-s, --storage-driver=""设置容器运行时使用指定的存储驱动,如,指定使用devicemapper,可以这样:docker -d -s devicemapper
--selinux-enabled=false设置启用selinux支持
--storage-opt=[]设置存储驱动的参数
--insecure-registry设置自定义仓库地址,可以设置多个     例如:  --insecure-registry 10.XX.XX.XX:5000 --insecure-registry 10.XX.XX.XX:5000

 

Docker 配置文件位置

Docker 的配置文件可以设置大部分的后台进程参数,在各个操作系统中的存放位置不一致

在 ubuntu 中的位置是:/etc/default/docker

在 centos6 中的位置是:/etc/sysconfig/docker

在 centos7 中的位置是:/etc/docker/

Centos6更改Docker运行根目录的方法

 许多Linux用户在安装系统的时候,并没有分配/var 分区,而在安装Docker后才发现,它的默认存放位置是在 /var/lib/docker。因此导致了Docker在运行的很慢,那么要怎么解决这个问题呢?下面一起来看看解决的方法吧。

  解决方法:

  一是重装系统,这也太不人性化了,忽略。。。下次部署 Docker 宿主机的时候得好好分区下。

  二是改变 Docker 默认存放路径。

  查了下手册发现: -g, --graph=“/var/lib/docker” 设置Docker运行时根目录

  使用 --graph 参数:docker --graph=/opt/docker -d,会自动生成/opt/docker目录(0700),并在该目录下创建 docker 相关文件

  原来的镜像和容器都找不到了,因为路径改了(原来的镜像是在/var/lib/docker/devicemapper/devicemapper/{data,metadata})

  Docker 的配置文件可以设置大部分的后台进程参数,在各个操作系统中的存放位置不一致

  在 ubuntu 中的位置是:/etc/default/docker

  在 centos 中的位置是:/etc/sysconfig/docker

  我使用 CentOS 7,所以只需要更改 vim /etc/sysconfig/docker 成

  OPTIONS=--graph=“/home/lib/docker” --selinux-enabled -H fd://

  然后 service docker start 重新启动 Docker 的路径就改成 /home/lib/docker 了

  上面的就是就是解决Docker存放位置的空间太小,导致Docker运行缓慢的方法了,有遇到这个问题的用户,就用这种方法进行解决吧。

Centos7更改Docker运行根目录配置:

/etc/docker/daemon.json

1

2

3

{

    "graph""/app/docker"

}

 

Docker指定multiple Insecure registry的方法

Docker如果需要从非SSL源管理镜像,需要配置Docker配置文件的insecury-registry参数,一般在如下位置修改其配置文件:

* /etc/sysconfig/docker

* /etc/init.d/docker

默认情况下,INSECURE_REGISTRY参数被注释不产生作用,可以根据实际需要配置该参数为目标非SSL加密的Docker Registry,例如:

INSECURE_REGISTRY='--insecure-registry 10.XX.XX.XX:5000'

如果需要同时对多个非SSL源进行显式标注,则加入多个insecure-registry标签即可,例如:

INSECURE_REGISTRY='--insecure-registry 10.XX.XX.XX:5000 --insecure-registry 10.XX.XX.XX:5000'

 

推送自定义镜像至目标Registry之前,需要对镜像进行TAG操作,如TAG中不包含registry的路径(端口)信息,则默认推送镜像至官方源(docker.io),如果需要推送到自定义的镜像源,则需要对目标进行TAG时带上自定义镜像repository的地址,如:
sudo docker tag docker.io/kibana:4.5 10.XX.XX.XXX:5000/example/sub/kibana:4.5

这条指令,即可将docker官方镜像源下载的docker.io/kibana:4.5镜像,标记为带自定义 repository路径的新的镜像(10.XX.XX.XXX:5000/example/sub/kibana:4.5)

标记完后,可以用sodu docker images检查镜像时候被正确指定repository信息及tag信息,确认无误后,即可推送至该自定义repository:

sudo docker push 10.XX.XX.XXX:5000/example/sub/kibana:4.5

正常情况下,该镜像已被推送至10.XX.XX.XXX:5000/example/sub路径。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值