1、yum -y install docker
有出现以下错误有可能是 SELinux的内核不支持没能启动
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
Active: failed (Result: exit-code) since 五 2018-09-28 22:29:34 CST; 11s ago
Docs: http://docs.docker.com
Process: 6544 ExecStart=/usr/bin/dockerd-current --add-runtime docker-runc=/usr/libexec/docker/docker-runc-current --default-runtime=docker-runc --exec-opt native.cgroupdriver=systemd --userland-proxy-path=/usr/libexec/docker/docker-proxy-current --init-path=/usr/libexec/docker/docker-init-current --seccomp-profile=/etc/docker/seccomp.json $OPTIONS $DOCKER_STORAGE_OPTIONS $DOCKER_NETWORK_OPTIONS $ADD_REGISTRY $BLOCK_REGISTRY $INSECURE_REGISTRY $REGISTRIES (code=exited, status=1/FAILURE)
Main PID: 6544 (code=exited, status=1/FAILURE)
9月 28 22:29:32 localhost.localdomain systemd[1]: Starting Docker Application Container Engine…
9月 28 22:29:32 localhost.localdomain dockerd-current[6544]: time=“2018-09-28T22:29:32.832688833+08:00” level=warning msg=“could not change group /var/run/docker.sock to docker: group do… not found”
9月 28 22:29:32 localhost.localdomain dockerd-current[6544]: time=“2018-09-28T22:29:32.837993726+08:00” level=info msg=“libcontainerd: new containerd process, pid: 6550”
9月 28 22:29:33 localhost.localdomain dockerd-current[6544]: time=“2018-09-28T22:29:33.881788812+08:00” level=warning msg="overlay2: the backing xfs filesystem is formatted without d_type support, …
9月 28 22:29:34 localhost.localdomain dockerd-current[6544]: Error starting daemon: SELinux is not supported with the overlay2 graph driver on this kernel. Either boot into a newer kerne…bled=false)
9月 28 22:29:34 localhost.localdomain systemd[1]: docker.service: main process exited, code=exited, status=1/FAILURE
9月 28 22:29:34 localhost.localdomain systemd[1]: Failed to start Docker Application Container Engine.
9月 28 22:29:34 localhost.localdomain systemd[1]: Unit docker.service entered failed state.
9月 28 22:29:34 localhost.localdomain systemd[1]: docker.service failed.
解决方法
vi /etc/sysconfig/docker
OPTIONS=’–selinux-enabled --log-driver=journald --signature-verification=false --registry-mirror=https://fzhifedh.mirror.aliyuncs.com --insecure-registry=registry.sese.com’
#修改这里的"–selinux-enabled",改成"–selinux-enabled=false"
OPTIONS=’–selinux-enabled=false --log-driver=journald --signature-verification=false --registry-mirror=https://fzhifedh.mirror.aliyuncs.com --insecure-registry=registry.sese.com’
systemctl start docker #启动 docker 服务
systemctl enable docker #设置开机启动docker服务
docker version #显示 Docker 版本信息
docker info #显示 Docker 系统信息,包括镜像和容器数。
docker search centos #从 Docker Hub 中搜索符合条件的镜像 centos为所需要镜像名字如Nginx等。
docker images #列出本地所有镜像。其中 [name] 对镜像名称进行关键词查询。
docker run -it docker.io/centos:latest /bin/bash #启动一个docker实例,docker.io/centos:latest为镜像全名和images列出的TAG参数
-i 以交互模式运行容器,通常与 -t 同时使用;
-t 为容器重新分配一个伪输入终端,通常与 -i 同时使用
docker ps -a #-a 列出所有容器
docker kill c4a213627f1b #杀死一个容器 ,c4a213627f1b为所列出容器的容器ID名
1.停用全部运行中的容器:
docker stop $(docker ps -q)
2.删除全部容器:
docker rm $(docker ps -aq)
修改镜像
1、docker run -t -d --name my_debian centos #my_debian (自己起的名字) centos(镜像名字)
2、docker ps -a #查看镜像运行情况因为是在后台运行所以必须用-a参数才能看到,注意最后NAMES的名字是否与自建的名字一致
3、 docker exec -it my_debian bash #my_debian (自己起的名字) bash或者/bin/bash
上传镜像
1、docker login -u userabc -p abc123 #登录
2、docker push Docker Hub文件名/镜像名
创建自定义网络:(设置固定IP)
1、docker network create --subnet=172.18.0.0/16 mynetwork #172.18.0.0/16 需要设定的IP段 16为255子网码 mynetwork 网络名称
2、➜ ~ docker network ls #执行后查看网络是否设定成功
NETWORK ID NAME DRIVER SCOPE
9781b1f585ae bridge bridge local
1252da701e55 host host local
4f11ae9c85de mynetwork bridge local
237ea3d5cfbf none null local