共有仓库
公用仓库即使用Docker hub
创建Docker hub账号,docke机器通过docker login 进行登录即可使用。
docker run -d -p 5000:5000 registry
这将使用官方的 registry 镜像来启动本地的私有仓库。 用户可以通过指定参数来配置私有仓库位置,例如配置镜像存储到 Amazon S3 服务。
docker run -e SETTINGS_FLAVOR=s3 -e AWS_BUCKET=acme-docker -e STORAGE_PATH=/registry -e AWS_KEY=AKIAHSHB43HS3J92MXZ -e AWS_SECRET=xdDowwlK7TJajV1Y7EoOZrmuPEJlHYcNP2k4j49T -e SEARCH_BACKEND=sqlalchemy -p 5000:5000 registry
此外,还可以指定本地路径(如 /home/user/registry-conf
)下的配置文件。
docker run -d -p 5000:5000 -v /home/user/registry-conf:/registry-conf -e DOCKER_REGISTRY_CONFIG=/registry-conf/config.yml registry
默认情况下,仓库会被创建在容器的 /tmp/registry
下。可以通过 -v
参数来将镜像文件存放在本地的指定路径。 例如下面的例子将上传的镜像放到 /opt/data/registry
目录。
docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry
私有仓库
镜像创建
Docker官方提供了docker-registry镜像,镜像监听5000端口,直接启动该镜像监听容器端口就行。
rpm包安装(centos)
yum install -y docker-registry
启动仓库
service docker-registry start
查询仓库状态
service docker-registry status
docker-registry会监听5000端口,启动8个工作进程
启动参数,通过配置文件/etc/sysconfig/docker-registry 设置。
构建带安全验证的私有仓库,可以使用nginx进行代理转发验证。
步骤:安装Nginx -》 配置服务监听(打开ssl) -》 配置SSL证书 -》 安装CA -》 登录nginx
docker run -d -p 5000:5000 registry