NIUCLOUD是一款SaaS管理后台框架多应用插件+云编译。上千名开发者、服务商正在积极拥抱开发者生态。欢迎开发者们免费入驻。一起助力发展! 广告
[TOC] # 1.centos7.4上安装docker ``` [root@linux-node01 ~]# yum install epel-release -y 安装docker ce版 [root@linux-node01 ~]# yum install -y docker* 查看安装 [root@linux-node01 ~]# rpm -qa |egrep -E "docker" python34-docker-pycreds-0.2.1-1.el7.noarch python34-docker-2.6.1-1.el7.noarch docker-common-1.13.1-88.git07f3374.el7.centos.x86_64 docker-latest-1.13.1-58.git87f2fab.el7.centos.x86_64 docker-novolume-plugin-1.13.1-88.git07f3374.el7.centos.x86_64 docker-v1.10-migrator-1.13.1-88.git07f3374.el7.centos.x86_64 python34-dockerpty-0.4.1-9.el7.noarch docker-client-1.13.1-88.git07f3374.el7.centos.x86_64 docker-client-latest-1.13.1-58.git87f2fab.el7.centos.x86_64 docker-latest-logrotate-1.13.1-58.git87f2fab.el7.centos.x86_64 docker-logrotate-1.13.1-88.git07f3374.el7.centos.x86_64 docker-compose-1.18.0-2.el7.noarch docker-distribution-2.6.2-2.git48294d9.el7.x86_64 docker-1.13.1-88.git07f3374.el7.centos.x86_64 docker-lvm-plugin-1.13.1-88.git07f3374.el7.centos.x86_64 docker-latest-v1.10-migrator-1.13.1-58.git87f2fab.el7.centos.x86_64 启动docker [root@linux-node01 ~]# service docker restart Redirecting to /bin/systemctl restart docker.service 查看进程 Redirecting to /bin/systemctl restart docker.service [root@linux-node01 ~]# ps -ef|grep docker root 2416 1 0 14:33 ? 00:00:00 /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 --selinux-enabled --log-driver=journald --signature-verification=false --storage-driver overlay2 root 2420 2416 0 14:33 ? 00:00:00 /usr/bin/docker-containerd-current -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --metrics-interval=0 --start-timeout 2m --state-dir /var/run/docker/libcontainerd/containerd --shim docker-containerd-shim --runtime docker-runc --runtime-args --systemd-cgroup=true root 2534 1334 0 14:37 pts/0 00:00:00 grep --color=auto docker 查看docker信息 [root@linux-node01 ~]# docker info |more ``` # 2.docker 常用命令操作 ``` 查询tomcat远程镜像 [root@linux-node01 ~]# docker search tomcat 拉取镜像 [root@linux-node01 ~]# docker pull docker.io/tomcat [root@linux-node01 ~]# docker pull docker.io/nginx 查看镜像 [root@linux-node01 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/tomcat latest 48dd385504b1 9 days ago 475 MB docker.io/nginx latest 568c4670fa80 2 weeks ago 109 MB 启动容器 [root@linux-node01 ~]# docker run -p 80:80 -itd docker.io/nginx /bin/bash 7820a6c9cef4d44daf6796050803557277b00080a74a4f2068246c1594840961使用 nginx 镜像运行容器 [root@WSyHRQ171356 /]# docker run -d -p 80:80 --name nginx -v /nginx/html:/usr/share/nginx/html -v /nginx/conf:/etc/nginx -v /nginx/logs:/var/log/nginx nginx 命令说明: -d:后台运行容器 -p 80:80:将容器的80端口映射到主机的80端口 --name nginx:将容器命名为nginx -v /nginx/html:/usr/share/nginx/html:将主机中/nginx/html目录挂载到容器的/usr/share/nginx/html目录 -v /nginx/conf:/etc/nginx:将主机中/nginx/conf目录挂载到容器的/etc/nginx目录 -v /nginx/logs:/var/log/nginx:将主机中/nginx/logs目录挂载到容器的/var/log/nginx目录 查看容器详情 [root@linux-node01 ~]# docker inspect 3c0a16348536 进入容器 [root@linux-node01 ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 3c0a16348536 docker.io/nginx "/bin/bash" 6 minutes ago Up 6 minutes 0.0.0.0:80->80/tcp festive_ride [root@linux-node01 ~]# docker exec -it 3c0a16348536 /bin/bash 启动nginx root@3c0a16348536:/usr/sbin# /usr/sbin/nginx 启动/关闭容器 [root@linux-node01 ~]# docker stop 3c0a16348536 [root@linux-node01 ~]# docker start 3c0a16348536 docker kill 某一个容器 [root@linux-node01 ~]# docker kill 3c0a16348536 docker rm 某一个容器 [root@linux-node01 ~]# docker rm 3c0a16348536 强制删除运行的容器 [root@linux-node01 ~]# docker rm -f 3c0a16348536 docker 删除镜像 [root@linux-node01 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/tomcat latest 48dd385504b1 9 days ago 475 MB docker.io/nginx latest 568c4670fa80 2 weeks ago 109 MB [root@linux-node01 ~]# docker rmi 568c4670fa80 删除多个镜像 [root@linux-node01 ~]# docker rmi 568c4670fa80 48dd385504b1 常用命令: docker push 推送指定镜像或者库镜像至docker源服务器; docker history 展示一个镜像形成历史; docker attach 当前shell下attach连接指定运行镜像; docker build 通过Dockerfile定制镜像; docker commit 提交当前容器为新的镜像; docker cp 从容器中拷贝指定文件或者目录到宿主机中; docker create 创建一个新的容器,同run,但不启动容器; docker diff 查看docker容器变化; docker events 从docker服务获取容器实时事件; docker export 导出容器的内容流作为一个tar归档文件[对应import]; docker import 从tar包中的内容创建一个新的文件系统映像[对应export]; docker info 显示系统相关信息; docker load 从一个tar包中加载一个镜像[对应save]; docker login 注册或者登陆一个docker源服务器; docker logout Dockerregistry退出; docker logs 输出当前容器日志信息; docker port 查看映射端口对应的容器内部源端口; docker pause 暂停容器; docker restart 重启运行的容器; docker save 保存一个镜像为一个tar包[对应load]; docker tag 给源中镜像打标签; docker top 查看容器中运行的进程信息; docker unpause 取消暂停容器; docker version 查看docker版本号; docker wait 截取容器停止时的退出状态值; 更改镜像源 https://mirrors.ustc.edu.cn/help/dockerhub.html 对于使用 systemd 的系统(Ubuntu 16.04+、Debian 8+、CentOS 7), 在配置文件 /etc/docker/daemon.json 中加入: { "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"] } 重新启动 dockerd: sudo systemctl restart docker 加速docker: curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://abcd1234.m.daocloud.io ```