目录
一、数据卷容器创建
1. 创建数据卷容器
docker run --name web100 -v /data1 -v /data2 -it centos:7 /bin/bash
cd /data1
touch 1.txt
cd …
cd /data2
touch 2.txt
exit
docker start ID
2. 新容器挂载数据卷容器web100
docker run -it --volumes-from web100 --name web10 centos:7 /bin/bash
//–volumes-from数据卷容器,此时进入web10容器
ls
/data1 /data2 //共享成功
3. 端口映射
docker run -d -P httpd:centos
docker run -d -p 222:80 httpd:centos
4. 容器互联(使用centos镜像)
docker run -itd -P --name web11 centos:7 /bin/bash
//创建并运行web11,端口随机分配
docker run -itd -P --name web22 --link web11:web11 centos:7 /bin/bash
//创建运行容器web22,连接到web11和其通信,–link name:alias 容器名:别名
docker exec -it 689010b386c3 bash
//进web22容器,ping web11
二、私有仓库创建
1. 下载registry
docker pull registry
2. 修改daemon.json
vim /etc/docker/daemon.json
{
“insecure-registries”: [“20.0.0.16:5000”], //私有仓库5000端口,此处的","不能省略
“registry-mirrors”: [“https://2lb8t07e.mirror.aliyuncs.com”]
}
systemctl restart docker
3. 创建容器
docker create -it registry /bin/bash
docker ps -a
4. 开启容器
docker start ID
docker run -d -p 5000:5000 -v /data/registry:/tmp/redistry registry //-v:在宿主机上自动创建/data/registry目录
5. 下载镜像
docker pull nginx
docker tag nginx:latest 20.0.0.16:5000/nginx-nj //指定往哪传镜像,daemon.json中指定了这个地址
docker push 20.0.0.16:5000/nginx-nj
6. 获取私有仓库列表
curl -XGET http://20.0.0.16:5000/v2/_catalog
{“repositories”:[“nginx-nj”]} //显示上传成功
7. 测试下载
docker rmi 20.0.0.16:5000/nginx-nj //删除镜像
docker pull 20.0.0.16:5000/nginx-nj //从本地下载镜像