安装docker
安装包下载提取码ggc9
一些封装好的docker镜像,提取码:e4yf
安装服务
cd ~/docker
yum install -y *
开服务
systemctl start docker.service
导入私有仓库镜像
cd ../images
docker load -i registry.tar
docker run -d --name registry -p 5000:5000 -v /opt/registry:/var/lib/registry registry:2.3.1
docker tag registry:2.3.1 localhost:5000/registry
docker push localhost:5000/registry
删除localhost:5000/registry,从仓库再下载
docker rmi localhost:5000/registry
docker pull localhost:5000/registry
创建证书存放目录,移动到这个目录的上级目录,输入命令制作证书
mkdir -p /opt/docker/certs
cd /opt/docker
openssl req -newkey rsa:4096 -nodes -sha256 -keyout certs/domain.key -x509 -days 365 -out certs/domain.crt
删除无认证私有仓库的docker进程
启动注册表,指示它使用TLS证书
这个命令将/certs目录绑定到容器中/certs/,并设置环境变量来告诉容器去哪里找到/certs/domain.crt 和/certs/domain.key
注册表在端口443(默认的HTTPS端口)上运行
-v /opt/registry:/var/lib/registry 指定私有仓库的位置
docker rm -f registry
docker run -d \
--restart=always \
--name registry \
-v `pwd`/certs:/certs \
-e REGISTRY_HTTP_ADDR=0.0.0.0:443 \
-e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt \
-e REGISTRY_HTTP_TLS_KEY=/certs/domain.key \
-p 443:443 \
-v /opt/registry:/var/lib/registry \
registry:2.3.1
mkdir -p /etc/docker/certs.d/westos.org
cd /etc/docker/certs.d/westos.org
cp /opt/docker/certs/domain.crt ca.crt
cd ~/images/
docker load -i game2048.tar
docker tag game2048:latest westos.org/game
vim /etc/hosts
172.25.16.1 server1 westos.org
docker push westos.org/game
把docker安装包发给server2,安装后开启服务
改server2解析
创建证书存放目录,从server1下载
mkdir -p /etc/docker/certs.d/westos.org/
scp root@server1:/etc/docker/certs.d/westos.org/ca.crt /etc/docker/certs.d/westos.org/
下载镜像
docker pull westos.org/game