Harbor是VMware公司最近開源的企業級Docker Registry項目, 項目位址為https://github.com/vmware/harbor 其目標是説明使用者迅速搭建一個企業級的Docker registry服務。它以Docker公司開源的registry為基礎,提供了管理UI, 基於角色的存取控制(Role Based Access Control),AD/LDAP集成、以及審計日誌(Audit logging) 等企業用戶需求的功能,同時還原生支持中文。Harbor的每個元件都是以Docker容器的形式構建的,使用Docker Compose來對它進行部署。用於部署Harbor的Docker Compose範本位於 /Deployer/docker-compose.yml,由5個容器組成:
Proxy: 由Nginx 伺服器構成的反向代理。
Registry:由Docker官方的開源registry 鏡像構成的容器實例。
UI: 即架構中的core services, 構成此容器的代碼是Harbor專案的主體。
Mysql: 由官方MySql鏡像構成的資料庫容器。
Log: 運行著rsyslogd的容器,通過log-driver的形式收集其他容器的日誌。
這幾個容器通過Docker link的形式連接在一起,在容器之間通過容器名字互相訪問。對終端使用者而言,只需要暴露proxy (即Nginx)的服務埠。
GITHUB
https://github.com/goharbor/harbor/releases
下載安裝包
wget https://storage.googleapis.com/harbor-releases/release-1.5.0/harbor-online-installer-v1.5.0.tgz tar xvf harbor-online-installer-v1.5.0.tgz
改安裝設定檔
hostname = docker.tony
vi docker-compose.yml 加入ports
registry: image: vmware/registry-photon:v2.6.2-v1.5.0 container_name: registry restart: always volumes: - /data/registry:/storage:z - ./common/config/registry/:/etc/registry/:z ports: - 5000:5000
{ "insecure-registries":["docker.tony:5000"] }
OPTIONS='--insecure-registry docker.tony:5000'
docker login --username=tony --password=Harbor12345 docker.tony:5000
docker pull ubuntu:14.04 docker tag ubuntu:14.04 docker.tony:5000/library/ubuntu docker push docker.tony:5000/library/ubuntu:latest
docker pull docker.tony:5000/library/ubuntu:latest