centos-7.6x64-mini 服务端:10.1.1.51 客户端:10.1.1.52

1.安装docker(服务端客户端都需要安装) yum install docker 启动 systemctl start docker

2.安装私有仓库软件(S) docker run -d -p 5000:5000 --restart always --name registry registry:2 查看运行情况 docker ps (未运行则不显示) docker ps -a

3.开启防火墙(S/C都执行) firewall-cmd --zone=public --add-port=5000/tcp --permanent 生效: firewall-cmd --reload

4.镜像测试(客户端) 共有仓库拉取nginx镜像 docker pull nginx 查看镜像 docker images

生成tag用于上传到S端 docker tag nginx 10.1.1.51:5000/pnginx:v1.0 上传至服务端 docker push 10.1.1.51:5000/pnginx:v1.0

两个会导致上传失败问题 a.传输方式,确认目录下有该文件。(S端执行) echo {"insecure-registries":["10.1.1.51:5000"]} > /etc/docker/daemon.json b.selinux(S端执行) getenforce->返回的是Enforcing则执行如下命令 setenforce 0 完成后重启docker服务 systemctl restart docker

5.前端页面镜像显示: docker run -d -e ENV_DOCKER_REGISTRY_HOST=10.1.1.51 -e ENV_DOCKER_REGISTRY_PORT=5000 -p 8081:80 konradkleine/docker-registry-frontend:v2

打开网页访问http://10.1.1.51:8081 访问不了看看是不是防火墙问题 firewall-cmd --zone=public --add-port=8081/tcp --permanent

6.客户端镜像和容器管理 删除镜像 docker rmi 10.1.1.51:5000/centos:v8.1
rmi--删除 10.1.1.51:5000 --私有仓库地址 10.1.1.51:5000/centos:v8.1 私有仓库镜像名称(私有仓库镜像名称是要求带IP地址和端口)

删除容器 docker ps -a docker rm ID 删除容器ID就行了

启动容器 docker run -d 容器ID 或 docker run -d -p 8080:80 镜像名称

关闭容器 docker shutdown 容器ID

启动容器 docker start 容器ID