1 .创建配置文件
/etc/docker/daemon.json
{
"insecure-registries":["192.168.1.10:5000]
}
[root@node ooxx]# vim /etc/docker/daemon.json
{
"insecure-registries":["192.168.1.10:5000]
}
2.重启docker服务
[root@node ooxx]# systemctl restart docker (重启服务)
3.启动私有仓库
[root@node ooxx]# docker run -d -p 5000:5000 registry (制作/启动私有镜像仓库)
4.上传镜像到私有仓库
给镜像打标签后上传
[root@node ooxx]# docker tag busybox:latest 192.168.1.10:5000/busybox:latest (给镜像打标签)
[root@node ooxx]# docker push 192.168.1.10:5000/busybox:lates (上传镜像)
5.在客户端docker上测试
[root@node ooxx]# vim /etc/docker/daemon.json (镜像默认使用https,我们没有https所以写以下配置文件,改成http)
{
"insecure-registries":["192.168.1.10:5000]
}
[root@node1 system]# systemctl restart docker.service (重启docker服务)
[root@node1 system]# docker run -it 192.168.1.10:5000/busybox:latest (运行服务端镜像)
查询私有仓库的镜像
[root@node1 system]# curl http://192.168.1.10:5000/v2/_catalog (api查询仓库镜像)
{"repositories":["busybox"]}
查询私有仓库里面的标签
[root@node1 system]# curl http://192.168.1.10:5000/v2/busybox/tags/list (api查询镜像标签)
{"name":"busybox","tags":["latest"]}
[root@node1 webroot]# docker run -d -p 80:80 -v /var/webroot:/var/www/html 192.168.1.10:5000/myos:httpd
后台运行 将容器的80映射到本地80端口
docker run -d -p 80:80
将本地的/var/webroot映射到容器的/var/www/html
-v /var/webroot:/var/www/html
还可以使用nfs , samba ,ceph 等
[root@node1 /]# docker network list (查看虚拟交换机,默认bridge)
[root@node1 /]# docker network inspect b1458b3f5af0 (查看网桥的详细信息)
[root@node1 /]# docker network COMMAND (查看使用帮助)
[root@node1 /]# docker network create --subnet 192.168.100.0/24 -d bridge docker1 (创建虚拟交换机)
[root@node1 /]# docker network ls (查看虚拟交换机)
[root@node1 /]# docker network rm docker1 (删除docker容器)
[root@node1 /]# docker network create --subnet 192.168.100.0/24 -d bridge -o com.docker.network.bridge.name=docker1 docker1 (创建虚拟交互机)
[root@node1 /]# docker run -it --network=docker1 192.168.1.10:5000/xiaohui (使用指定的网桥运行容器)
[root@node1 /]# docker inspect -f "{{.NetworkSettings.IPAddress}}" 10d807808895 (获得容器的ip地址)
iptables -t nat -A DOCKER ! -i docker0 -p tcp -m tcp --dport 8022 -j DNAT --to-destination 172.17.0.3:22 (将容器端口22绑定到本机的8022)
[root@node1 /]# iptables -t nat -A DOCKER ! -i docker0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 172.17.0.2:80 (nat端口绑定)
转载自:运维之家(https://www.ttl178.com/blog/?aid=80)