一、Docker私有仓库的操作
1、创建私有仓库
docker pull registry
修改
vim /etc/docker/daemon.json
{
"insecure-registries": ["192.168.172.10:5000"], 添加
"registry-mirrors": ["阿里云加速地址"]
}
systemctl restart docker.service
docker create -it registry /bin/bash
docker ps -a
docker start e5272dbaf88f
挂载容器
宿主机的/data/registry自动创建挂载容器中的/tmp/registry
docker run -d -p 宿主机端口:容器内部端口 -v 宿主机目录:容器内目录 镜像
例:
docker run -d -p 5000:5000 -v /data/registry:/tmp/registry registry
更改标记
更改标记为192.168.172.10:5000/nginx
docker tag nginx:latest 192.168.172.10:5000/nginx
2、上传
docker push 192.168.172.10:5000/nginx
3、获取私有仓库列表
curl -XGET http://192.168.172.10:5000/v2/_catalog
//显示上传成功
(""repositories":[""nginx"")
4、测试私有仓库下载
docker pull 192.168.163.100:5000/nginx
二、Docker数据卷和数据卷容器
在创建数据卷和数据卷容器的时候,如果挂载目录不存在,则会自动创建
1、数据卷
将宿主机目录/var/www挂载到容器中的/data1上
docker run -v /var/www:/data1 --name test -it centos:7 /bin/bash
cd /data1/
touch 123
返回宿主机进行查看
ls /var/www/
2、数据卷容器
//数据卷容器
docker run --name test1 -v /data1 -v /data2 -it centos:7 /bin/bash
//新容器挂载数据卷容器juan
docker run -it --volumes-from test1 --name test2 centos:7 /bin/bash
数据卷与数据卷容器的区别
- 数据卷是挂载在宿主机上的
- 数据卷容器是通过–volumes-from实现容器与容器之间的挂载
三、容器互联(使用centos镜像)
//创建并运行容器取名web1,端口号自动映射
docker run -itd -P --name web1 centos:7 /bin/bash
//创建并运行容器取名web2,链接到web1和其通信进web2容器 ping web1
docker run -itd -P --name web2 --link web1:web1 centos:7 /bin/bash
--link name:alias --link容器名:别名