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