docker安装
二进制式安装
# 查看相关依赖包
yum list installed | grep docker
# 停止服务
sudo systemctl stop docker
# 卸载应用
sudo yum remove -y docker-ce docker-ce-cli containerd.io
# docker二进制包下载地址
https://download.docker.com/linux/static/stable/x86_64/
# 下载指定安装包
wget https://download.docker.com/linux/static/stable/x86_64/docker-17.03.2-ce.tgz
# 解压缩
tar -zxvf docker-17.03.2-ce.tgz
# 添加到用户扩展的可执行程序目录
cp docker/* /usr/local/bin
# 添加到系统服务*.service
cat > /etc/systemd/system/docker.service << "EOF"
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
ExecStart=/usr/bin/dockerd --log-level=error $DOCKER_NETWORK_OPTIONS
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
RestartSec=5
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
EOF
# 修改配置文件
tee /etc/docker/daemon.json << EOF
{
"registry-mirrors": ["加速源地址"],
"graph": "/data04/docker" # 版本低使用data-root: xxx/docker
}
EOF
# 解决可能出现的volume store metadata database:timeout
ps axf | grep docker | grep -v grep | awk '{print "kill -9 " $1}' | sudo sh
# 重新加载配置文件&&启动服务&&设置开机自启
sudo systemctl daemon-reload && systemctl start docker && systemctl enable docker
# 可能出现的问题
问题:systemctl enable docker 出现 created symlink from xxx/xx:xxx/xx
解决:sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# ps:
1. usr: unix system resource
2. /usr/bin : 系统预装的可执行程序 随系统升级变化
3. /usr/local/bin: 用户自己扩展的可执行程序目录 不会随系统升级变化
这2个目录存在相同执行程序 按照环境变量执行的优先级确定执行的程序 /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
/usr/local/bin > /usr/bin
4. /usr/lib/systemd/system: 用户级别service目录
5. /etc/systemd/system: root级别service目录
/etc/systemd/system > /run/systemd/system > /lib/systemd/system # 优先级从高到底 且覆盖低级别service配置
yum式安装
systemctl stop docker # 停止服务
sudo yum remove -y docker-ce docker-ce-cli containerd.io # 卸载软件包
sudo yum install -y docker-ce-<version> # 新安装指定版本
sudo yum downgrade --setopt=obsoletes=0 -y docker-ce-<version> docker-ce-cli-<version> containerd.io # 不卸载源版本降低版本安装推荐使用b
ps:
yum deplist nvidia-docker2 # 可根据依赖包依次安装特定软件
rpm -ivh *.rpm --nodeps --force # 强制安装rpm包
apt式安装
sudo apt-get remove docker docker-engine docker.io # 卸载旧版本
sudo apt-get update # 更新软件源
sudo apt-get install docker-ce=<version> docker-ce-cli=<version> containerd.io # 安装指定的docker
systemctl enable docker && systemctl start docker
docker 用户管理
# 用于管理docker访问权限
sudo groupadd <groupname> # 创建用户组
sudo usermod -aG docker <username> # 添加特定用户到用户组
cat /etc/group | grep <groupname> # 查看用户组下用户信息
# 实例
sudo groupadd docker
sudao usermod -aG docker fsh
cat /etc/group | grep docker
docker加速源地址
# 网易
http://hub-mirror.c.163.com
# Docker中国区官方镜像
https://registry.docker-cn.com
# 中科大
https://docker.mirrors.ustc.edu.cn
# 腾讯源
https://mirror.ccs.tencentyun.com
帮助文档