搭建 Docker 私有镜像库
1、安装 Docker
下载 Docker 安装包:访问 Docker 官网(https://www.docker.com/)下载适合您操作系统的安装包。
安装 Docker:按照安装向导进行安装,并确保启动 Docker 服务。
2、创建 Docker Swarm
初始化 Swarm:在终端中运行以下命令来初始化 Swarm。
```
docker swarm init
```
获取 Swarm Join Command:运行上述命令后,会显示一个加入 Swarm 的命令,请将其复制保存。
3、部署 Docker Swarm Manager
创建网络:运行以下命令创建一个名为 "mynet" 的自定义网络。
```
docker network create mynet
```
部署 Swarm Manager:运行以下命令部署一个 Swarm Manager。
```
docker service create name swarmmanager network mynet replicas 1 publish published=2375,target=2375 docker:swarm manage
```
4、配置私有镜像库
创建卷存储:运行以下命令创建一个名为 "myregistry" 的卷存储。
```
docker volume create myregistry
```
运行私有镜像库:运行以下命令启动私有镜像库容器。
```
docker run d p 5000:5000 name myregistry restart always v myregistry:/var/lib/registry e REGISTRY_URL=localhost:5000 e REGISTRATION_TOKEN=mytoken network mynet registry:2
```
注册私有镜像库:运行以下命令将私有镜像库注册到 Swarm。
```
docker tag myregistry:latest myregistry:local
docker push myregistry:local
```
更新 Swarm Manager:运行以下命令更新 Swarm Manager。
```
docker service update image myregistry:local swarmmanager
```
5、验证私有镜像库是否可用
拉取私有镜像库中的镜像:运行以下命令从私有镜像库中拉取名为 "nginx" 的镜像。
```
docker pull myregistry:local/nginx
```
运行容器:运行以下命令使用刚刚拉取的镜像创建一个容器。
```
docker run d p 8080:80 name mynginx restart always myregistry:local/nginx
```
访问容器:在浏览器中输入 "http://localhost:8080",如果能够正常访问,则说明私有镜像库已经成功搭建并可用。
相关问题与解答:
1、Q: 如果我想将私有镜像库设置为只允许特定用户访问,应该如何操作?
A: 你可以使用认证机制来实现只允许特定用户访问私有镜像库,具体步骤如下:
在私有镜像库容器中启用认证功能:编辑/etc/docker/daemon.json
文件,添加以下内容:
```json
{
"insecureregistries": ["myregistry:5000"],
"auth": {
"authentication": "token",
"token": "mytoken"
}
}
```
重启私有镜像库容器以使更改生效,在推送或拉取镜像时,需要提供正确的认证令牌。
```bash
docker login myregistry:5000 u <username> p <password> password <token>
docker push myregistry:local/<image>:<tag>
docker pull myregistry:local/<image>:<tag>
```
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/545915.html