[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
```
- 0.空白目录
- 1.ansible
- 1.1 ansible playbook 搭建haproxy+lamp
- 1.2 ansibleplaybook 安装zabbix
- 1.0 安装最新版ansible
- 2.docker
- 2.2.安装docker私有仓库harbor
- 2.1 安装docker并启动一个容器操作
- 2.3 基于Docker-WEB自动化管理Docker容器实战
- 2.4 通过实例演示dockerfile的语法
- 2.5 通过docker部署mysql5.7
- 2.6 通过docker部署rabbitmq
- 2.7 docker国内加速镜像
- 3.k8s
- 4.mysql
- 1.Xtrabackup实现数据的备份与恢复
- 2.mysql主从复制
- mysql报错修复
- 1.ERROR 1146 (42S02): Table 'performance_schema.session_variables' doesn't exist
- 5.lvs+keepalive
- 1.haproxy.conf
- 5.1 haproxy
- haproxy配置详解
- 5.2 ab压测haproxy架构和nginx架构对比
- 5.3 基于ve的压测
- 6.prometheus
- 7.python学习
- 7.1 python基础部分
- 8.elk
- 8.1 es数据备份及导出导入快照
- 9.jenkins-git-ansible-CI/CD
- 10.nosql
- 10.1 mongo
- 10.2 redis
- 10.2.1 redis集群搭建
- 10.3 kafka
- 10.4 rabbitmq
- 11.granfa
- 12.nginx
- 13.shell
- 14.zabbix
- 14.1 install zabbix4.0
- 14.2 zabbix监控日志报错
- 14.3 install zabbix for docker
