脚本安装
curl -fsSL https://get.docker.com | bash -s docker —mirror Aliyun(官方阿里云镜像源安装脚本)
参考:https://yq.aliyun.com/articles/110806?commentId=11066
YUM安装
CentOS 6
# step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3: 更新并安装 Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
# Step 4: 开启Docker服务
sudo service docker start
# 注意:
# 官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,你可以通过以下方式开启。同理可以开启各种测试版本等。
# vim /etc/yum.repos.d/docker-ce.repo
# 将 [docker-ce-test] 下方的 enabled=0 修改为 enabled=1
#
# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# yum list docker-ce.x86_64 --showduplicates | sort -r
# Loading mirror speeds from cached hostfile
# Loaded plugins: branch, fastestmirror, langpacks
# docker-ce.x86_64 17.03.1.ce-1.el7.centos docker-ce-stable
# docker-ce.x86_64 17.03.1.ce-1.el7.centos @docker-ce-stable
# docker-ce.x86_64 17.03.0.ce-1.el7.centos docker-ce-stable
# Available Packages
# Step2 : 安装指定版本的Docker-CE: (VERSION 例如上面的 17.03.0.ce.1-1.el7.centos)
# sudo yum -y install docker-ce-[VERSION]
CentOS 7
yum -y install docker-ce //centos7系统内置docker yum源
安装校验
root@iZbp12adskpuoxodbkqzjfZ:$ docker version
Client:
Version: 17.03.0-ce
API version: 1.26
Go version: go1.7.5
Git commit: 3a232c8
Built: Tue Feb 28 07:52:04 2017
OS/Arch: linux/amd64
Server:
Version: 17.03.0-ce
API version: 1.26 (minimum version 1.12)
Go version: go1.7.5
Git commit: 3a232c8
Built: Tue Feb 28 07:52:04 2017
OS/Arch: linux/amd64
Experimental: false
RPM安装
下载rpm包,
地址:https://developer.aliyun.com/packageSearch?word=docker
包名:
container-selinux-2.119.2-1.911c772.an7.noarch.rpm
containerd.io-1.2.6-3.3.el7.x86_64.rpm
docker-ce-cli-18.09.0-3.el7.x86_64.rpm
docker-ce-18.09.0-3.el7.x86_64.rpm
安装:
yum install *.rpm (yum会安装依赖工具)
启动docker
systemctl start docker.service
systemctl enable docker.service
配置docker
配置镜像加速器和私有仓库地址
快速添加
curl -sSL https://kuboard.cn/install-script/set_mirror.sh | sh -s https://registry.cn-hangzhou.aliyuncs.com
手工添加
vim /etc/docker/daemon.json(注意josn格式,否则报错)
{
"registry-mirrors": [
"https://registry.docker-cn.com"
]
"insecure-registries": [
"dockerhub.ykzx.com"
]
}
阿里云镜像加速器(公网使用)
{“registry-mirrors”: [“https://qyxafvlr.mirror.aliyuncs.com“]}
Docker 官方提供的中国 registry mirror https://registry.docker-cn.com
添加私有仓库地址(内网使用)
{“insecure-registries”:[“172.16.0.29:5000”]}
重启docker生效
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
较完整的配置(全局配置)
配置容器日志缓存大小和日志文件数和远程访问
{
"registry-mirrors": ["https://xxxx"],
"live-restore":true,
"default-shm-size":"128M",
"max-concurrent-downloads": 10,
"oom-score-adjust": -1000,
"debug":false,
"exec-opts": ["native.cgroupdriver=cgroupfs"],
"data-root":"/mnt/data/docker-data",
"log-driver":"json-file",
"log-opts": {
"max-size":"20m",
"max-file":"3"
},
"storage-driver":"overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
]
}
常见问题
登录仓库报错:
答:
docker默认使用的是https连接,而harbor默认使用http连接,所以需要修改docker配置标志insecure registry不安全仓库的主机!
centos,docker17以上版本,配置/etc/docker/daemon.json添加私有仓库地址
{
"insecure-registries": [
"dockerhub.ykzx.com"
]
}
debian:/lib/systemd/system/docker.service
# for containers run by docker
ExecStart=/usr/bin/dockerd -H fd:// --log-opt max-size=100m --log-opt max-file=1 -H unix:///var/run/docker.sock -H tcp://172.16.41.92:2375
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=1048576
centos
只能运行时加入参数
docker run —log-opt max-size=10m —log-opt max-file=1