溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

docker如何搭建本地私有倉庫

發布時間:2021-11-20 16:18:15 來源:億速云 閱讀:206 作者:小新 欄目:大數據
# Docker如何搭建本地私有倉庫

## 一、私有倉庫的作用

在企業或團隊開發中,使用Docker私有倉庫(Registry)有以下優勢:
1. **安全隔離**:避免將敏感鏡像暴露在公網
2. **帶寬優化**:減少從Docker Hub重復拉取鏡像的時間消耗
3. **版本控制**:自主管理內部鏡像版本

## 二、快速搭建私有倉庫

### 1. 使用官方Registry鏡像
```bash
# 拉取最新registry鏡像
docker pull registry:2

# 啟動容器(默認使用5000端口)
docker run -d -p 5000:5000 --name my-registry registry:2

2. 配置HTTPS(生產環境必需)

# 生成自簽名證書
openssl req -x509 -newkey rsa:4096 -nodes -keyout domain.key -out domain.crt -days 365

# 啟動帶證書的registry
docker run -d -p 5000:5000 --name secure-registry \
  -v $(pwd)/certs:/certs \
  -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt \
  -e REGISTRY_HTTP_TLS_KEY=/certs/domain.key \
  registry:2

三、客戶端配置

1. 允許非安全連接(僅測試環境)

編輯/etc/docker/daemon.json

{
  "insecure-registries": ["your-server-ip:5000"]
}

重啟Docker服務:sudo systemctl restart docker

2. 推送/拉取鏡像示例

# 標記本地鏡像
docker tag nginx:alpine your-server-ip:5000/my-nginx

# 推送鏡像
docker push your-server-ip:5000/my-nginx

# 拉取鏡像
docker pull your-server-ip:5000/my-nginx

四、高級功能擴展

  1. 身份驗證
# 創建密碼文件
docker run --entrypoint htpasswd registry:2 -Bbn user password > auth/htpasswd

# 啟動帶認證的registry
docker run -d -p 5000:5000 --name auth-registry \
  -v $(pwd)/auth:/auth \
  -e "REGISTRY_AUTH=htpasswd" \
  -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
  -e "REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd" \
  registry:2
  1. Web UI管理: 推薦使用docker-registry-ui等開源項目實現可視化管理。

五、注意事項

  1. 生產環境必須配置HTTPS和訪問認證
  2. 定期清理舊鏡像可使用registry:2自帶的垃圾回收機制
  3. 大數據量建議配置持久化存儲卷

通過以上步驟,您已成功搭建企業級Docker私有倉庫,后續可通過CI/CD流水線實現自動化鏡像發布。 “`

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女