工作多年接触到的都是centos
操作系统,如果是mac
用户或者Ubuntu
用户,部分内容无法适用。
安装部分可以参考清华大学的手册:https://mirrors.tuna.tsinghua.edu.cn/help/docker-ce/
安装
由于不可知的神秘力量,国内安装docker推荐设置云厂商提供的仓库地址,这里推荐使用阿里云
设置仓库源地址
yum install yum-utils device-mapper-persistent-data lvm2 && \
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
部署最新版本
docker作为常用的后台服务,推荐设置为开机启动,当前命令适用于centos7
sudo yum install -y docker-ce docker-ce-cli containerd.io && systemctl enable --now docker
部署指定版本
kubernetes
和docker
的发布并没与完全同步,如果接下来需要部署kubernetes
,请参考kubernetes
部署说明,安装指定版本的docker
yum list docker-ce --showduplicates | sort -r
sudo yum install -y docker-ce-18.09.2-3.el7 docker-ce-cli-18.09.2-3.el7 containerd.io-18.09.2-3.el7 && systemctl enable --now docker
普通用户添加docker权限
sudo usermod -aG docker ${USER}
卸载
sudo yum erase -y docker-ce docker-ce-cli containerd.io
日常使用
镜像加速
依旧存在不可知的神秘力量,导致拉取镜像的时候速度不给力,此时国内的云厂商站出来了,提供了很多加速服务,依旧推荐一波阿里云
加速的地址各位看管自己注册阿里云账号获取,此服务免费,阿里云也提供免费的镜像构建服务
cat > /etc/docker/daemon.json <<EOF
{
"registry-mirrors": [
"https://docker.nju.edu.cn",
"https://mirror.baidubce.com",
"https://docker.m.daocloud.io",
"https://docker.mirrors.sjtug.sjtu.edu.cn"
]
}
EOF
systemctl daemon-reload && \
systemctl restart docker
强烈推荐的控制面板
docker volume create portainer_data && \
docker run -d --name=portainer --restart=always -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:2.20.3-alpine
常用镜像拉取合集
docker pull rancher/rancher:stable && docker pull portainer/portainer-ce:2.0.1 && \
docker pull centos:7 && docker pull ubuntu:20.04 && docker pull ubuntu:18.04 && \
docker pull redis:5 && docker pull redis:6 && \
docker pull alpine:3.11 && docker pull busybox:1.32 && \
docker pull rabbitmq:3.7-management && \
docker pull mariadb:10.2 && \
docker pull nginx:1.18 && docker pull nginx:1.19 && \
docker pull mysql:5.6 && docker pull mysql:8 && \
docker pull elasticsearch:6.8.11 && docker pull logstash:6.8.11 && docker pull kibana:6.8.11 && \
docker pull zookeeper:3.4 && \
docker pull influxdb:1.7 && docker pull grafana/grafana:7.3.1 && \
docker pull percona:8 && docker pull percona:5.6 && \
docker pull cloverzrg/frps-docker:0.34.3 && docker pull cloverzrg/frpc-docker:0.34.3
常用组合命令
https://docs.docker.com/engine/reference/commandline/docker/
查看容器运行状态,附加format
参数,查看详细的容器信息,此时不关注镜像信息
docker ps --format "{{.Names}}: {{.Ports}}: {{.Size}}"
#portainer: 0.0.0.0:8000->8000/tcp, 0.0.0.0:9000->9000/tcp: 0B (virtual 172MB)
#influxdb: 0.0.0.0:8086->8086/tcp: 183B (virtual 311MB)
一键停止所有容器
docker stop $(docker ps -a -q)
一键删除所有镜像
dokcer rmi $(docker images -a -q)
导出镜像
docker save <IMAGE NAME>:<IMAGE TAG> > -o XXX.tar
导出镜像并压缩
docker save <IMAGE NAME>:<IMAGE TAG> | gzip > XXX.tar
导入镜像
docker load -i XXX.tar