本地 Docker 啟用 API 並搭建私有倉庫
阿新 • • 發佈:2021-10-07
環境
- Archlinux
安裝 docker
- 安裝 docker 及 docker-compose
sudo pacman -S docker docker-compose
- 使用國內源
sudo vim /etc/docker/daemon.json
{
"registry-mirrors": [
"https://registry.docker-cn.com"
]
}
- 啟動 docker
sudo systemctl start docker
- 檢視相關版本資訊
sudo docker info
開啟 API
- 編輯配置
sudo vim /usr/lib/systemd/system/docker.service
...
>>> ExecStart=/usr/bin/dockerd -H fd://
# 上行修改為如下,無認證訪問,不安全,如需公網訪問請配置認證
<<< ExecStart=/usr/bin/dockerd -H fd:// -H tcp://0.0.0.0:2375
...
- 重新啟動 daemon
sudo systemctl daemon-reload && sudo systemctl restart docker
- 驗證是否成功啟用
docker -H tcp://127.0.0.1:2375 info
搭建私有倉庫
- 建立映象儲存路徑
sudo mkdir /opt/registry && cd /opt/registry
- 建立 docker-compose.yml,該配置未啟用任何認證,如需公網訪問請配置認證,
sudo vim docker-compose.yml
registry:
restart: always
image: registry:2
ports:
- 5000:5000
volumes:
- /opt/registry:/var/lib/registry
- 啟動 docker 映象
sudo docker-compose up -d
- 上述的倉庫未開啟 HTTPS,預設情況下 docker 將不允許進行訪問,
sudo vim /etc/docker/daemon.json
... "insecure-registries" : [ "localhost:5000" ] ...
- 重啟 docker
sudo systemctl restart docker