从零搭建docker私有仓库的步骤

2020-06-17 06:30:39易采站长站整理

(选学)docker高级命令

交换文件

 docker cp

通过

docker cp
命令, 可以实现容器与外部环境的文件交换

我们在docker容器内部新建一个

123.txt
文件, 将它拷贝到外部环境, 在外部环境新建一个456.txt拷贝到docker容器内部(如下图)

即使容器处于未激活状态, 也是可以进行文件交换的

将修改后的容器发布为镜像


# 将修改后的容器发布为镜像, `-a`表示作者, `-m`表示对本次修改的说明
sudo docker commit -a "zhaoolee" -m "add 123.txt 456.txt" zhaoolee-centos zhaoolee-centos:0.1
# 基于新建的镜像创建容器
sudo docker run -t -i --name my-centos zhaoolee-centos:0.1 /bin/bash

查看镜像的信息


# 查看刚刚新建的镜像信息
sudo docker history zhaoolee-centos:0.1

查看容器内变动日志


sudo docker diff zhaoolee-centos

查看镜像和容器的详细信息


# 查看镜像的详细信息
sudo docker inspect zhaoolee-centos:0.1
# 查看容器的详细信息
sudo docker inspect zhaoolee-centos

第四部分: 私有仓库的创建

1. 下载私有仓库注册服务器的镜像


sudo docker pull registry:latest

2. 创建一个注册服务器容器


sudo docker run -d -p 5000:5000 --name server-registry -v /tmp/registry:/tmp/registry docker.io/registry:latest

参数说明 -d容器在后端运行, -p 5000:5000在容器的5000端口运行并映射到外部系统的5000端口, –name server-registry容器命名为server-registry, -v /tmp/registry /tmp/registry把宿主机的目录/tmp/registry挂载到容器目录/tmp/registry

3. 为本地镜像添加标签,并将其归入本地仓库

为本地镜像添加标签


sudo docker tag zhaoolee-centos:0.1 localhost:5000/zhaoolee-centos:0.1

将被标记的本地镜像, push到仓库