docker 如何部署一个在线的镜像仓库,并且配置仓库访问帐号和密码
时间: 2023-11-23 13:10:33 浏览: 97
要部署一个在线的 Docker 镜像仓库,可以使用 Docker 官方提供的开源工具 Docker Registry。下面是具体步骤:
1. 安装 Docker Registry
可以使用以下命令安装 Docker Registry:
```
docker run -d --name registry -p 5000:5000 registry:2
```
其中,`--name` 参数指定容器名称,`-p` 参数指定将容器的 5000 端口映射到主机的 5000 端口。
2. 配置镜像上传权限
默认情况下,Docker Registry 是公开的,任何人都可以上传镜像。如果需要配置访问帐号和密码,可以使用以下命令:
```
docker run --entrypoint htpasswd registry:2 -Bbn <username> <password> > auth/htpasswd
```
其中,`<username>` 和 `<password>` 分别指定登录用户名和密码。这个命令会将用户名和密码保存到 `auth/htpasswd` 文件中。
3. 启动 Docker Registry 并配置访问帐号和密码
启动 Docker Registry 时,需要指定访问授权信息。可以使用以下命令启动 Docker Registry:
```
docker run -d --name registry -p 5000:5000 \
-v /path/to/auth:/auth \
-e "REGISTRY_AUTH=htpasswd" \
-e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
-e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd \
registry:2
```
其中,`-v` 参数指定将 `auth` 目录挂载到容器中的 `/auth` 目录,`-e` 参数指定授权信息。这个命令会将 Docker Registry 启动在后台运行。
4. 测试镜像上传和下载
现在,可以使用 `docker push` 命令上传镜像到 Docker Registry:
```
docker build -t my-image .
docker tag my-image localhost:5000/my-image
docker push localhost:5000/my-image
```
然后,可以使用 `docker pull` 命令从 Docker Registry 下载镜像:
```
docker pull localhost:5000/my-image
```
这样就完成了 Docker 镜像仓库的部署和配置访问帐号和密码的过程。