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=[] 设置存储驱动的参数

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

{
    "graph": "/app/docker"
}
时间: 2024-10-21 06:00:57

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

centos7下更改docker镜像和容器的默认路径

笔者近期在服务器上搭建docker环境,可由于笔者是普通用户,在安装的时候就跳了很多坑,现在记录一下. 一.docker权限问题 据官方解释,搭建docker环境必须使用root权限,或者sudo装,但一般服务器是一个机构或者多个人共同使用的,只有管理员才能拿到root权限,所以建议需要使用docker的普通用户要向管理员申请,在他搭完服务器后再搭一个docker环境,并把你当前这个普通用户名加入到docker组内,这样你才能使用. 命令行 sudo usermod -aG docker <yo

如何保证 docker 后台进程重启,而不引起容器关闭

前言 平常在进行docker 实验时,经常会需要修改一些配置参数,有些参数修改后,是需要重启docker 后台进程 daemon 才能生效的,但是docker 后台进程重启后,可能会造成正在运行的容器强制关闭.如果容器正在跑着重要的测试,这样就不太方便了.所以,有必要了解一下如何使docker 后台进程在重启的情况下,容器不会强制关闭,保持运行. 服务器环境 ubuntu 14.04docker 17.12.0-ce 修改docker 配置文件 sudo vim /etc/docker/daem

centos7 docker容器(二)运行和移除容器内应用详解

安装.运行和移除docker中的应用 运行和保存Docker容器 1.运行并保存基于Ubuntu Docker容器的nginx服务器.安装Nginx守护进程到Ubuntu启动容器: # docker run ubuntu bash -c "apt-get -y install nginx" 2.其次,在安装完Nginx包后,发出命令 docker ps -l 得到运行容器的ID或名称.运行以下命令: # docker ps -l 运行以下命令获得更改 # docker commit 5

docker实用参数

docker images:查看docker镜像docker ls:查看运行中的docker 镜像docker run -d -p 80:80 -v /home/xxxxx/nginx-conf/html:/usr/share/nginx/html:ro -v /home/xxxxx/nginx-conf/nginx.conf:/etc/nginx/nginx.conf:ro hub.c.163.com/library/nginx-d后台启动-p端口映射-v本地目录,配置文件映射,通过制定ro将

docker概述与安装及运行容器

传统虚拟化 传统虚拟化步骤 1.安装虚拟化软件以及虚拟化的管理软件 2.创建虚拟机 3.给虚拟机安装os 4.在虚拟机内部不是应用(http.db之类的应用) 传统虚拟化的特点 1.VM与VM之间是完全隔离的,并且虚拟机必须要安装os 2.应用所运行的环境是建立在操作系统之上的 3.应用迁移非常笨重 传统虚拟化已经无法满足当前敏捷开发方式,VM的方式会导致开发环境和生产环境不一致,版本测试完成之后需要重新搭建环境. docker docker是容器的引擎工具,最主要是管理容器的生命周期,创建容器

docker的/var/run/docker.sock参数

关于/var/run/docker.sock参数在创建docker容器时,有时会用到/var/run/docker.sock这样的数据卷参数,例如以下docker-compose.yml,可以看到kafka容器的数据卷参数带有/var/run/docker.sock: version: '2'services: zookeeper: container_name: zookeeper image: wurstmeister/zookeeper ports: - "2181:2181"

docker的/var/run/docker.sock参数(待总结)

搞清楚/var/run/docker.sock参数的前提是了解docker的client+server架构,如下是执行docker version命令的结果: 可见在电脑上运行的docker由client和server组成,我们输入docker version命令实际上是通过客户端将请求发送到同一台电脑上的Doceker Daemon服务,由Docker Daemon返回信息,客户端收到信息后展示在控制台上,来自stack overflow的架构图如下: docker.sock 是docker

Docker第一弹:下载运行hello-world程序

1.需要安装好docker程序 没有安装的请看在centos 6.8下安装docker 2.从docker镜像仓库中拉去hello-world镜像 docker pull hello-world 3.查看下载好了的情况 docker images 第一项为仓库,第二个为标签,第三个是镜像ID,第四个是创建时间,第五个是镜像大小 4.运行镜像 完整的命令 docker [optiion] image[:tag][Command][ARG] 运行helloworld则是 docker run hel

[docker]privileged参数

声明: 本博客欢迎转发,但请保留原作者信息! 博客地址:http://blog.csdn.net/halcyonbaby 内容系本人学习.研究和总结,如有雷同,实属荣幸! privileged参数 $ docker help run ... --privileged=false Give extended privileges to this container ... 大约在0.6版,privileged被引入docker.使用该参数,container内的root拥有真正的root权限.否则