1. 程式人生 > >Docker私有倉庫管理之Harbor搭建

Docker私有倉庫管理之Harbor搭建

環境說明:

  • Centos 7.2
  • 主機IP: 192.168.20.17

一、安裝相關依賴

1、安裝docker

yum -y install docker

啟動docker

systemctl restart docker

檢視docker版本

$ docker version

Client:
Version:         1.12.6
API version:     1.24
Package version: docker-common-1.12.6-11.el7.centos.x86_64
Go version:      go1.7.4
Git commit:      96d83a5/1.12.6
Built:           Tue Mar  7 09:23:34 2017
OS/Arch:         linux/amd64
Cannot connect to the Docker daemon. Is the docker daemon running on this host?

2、安裝docker-compose

pip安裝

pip install docker-compose

原始碼安裝

檢視docker-compose版本

$ docker-compose version

docker-compose version 1.13.0dev, build unknown
docker-py version: 2.2.1
CPython version: 2.7.5
OpenSSL version: OpenSSL 1.0.1e-fips 11 Feb 2013

3、安裝golang

把以下內容新增到環境變數 vi ~/.bash_profile

export PATH=$PATH:/usr/local/go/bin

使其生效

source ~/.bash_profile

檢視go版本

$ go version

go version go1.8.1 linux/amd64

二、部署harbor

1、下載harbor原始碼

2、解壓

unzip master.zip
cd /harbor-master/make

檢視依賴是否安裝

$ ./checkenv.sh

Note: golang version: 1.8.1

Note: docker version: 1.12.6

Note: docker-compose version: 1.12.0

3、修改配置檔案

vi harbor.cfg

## Configuration file of Harbor
# hostname 設定訪問地址,支援IP,域名,主機名,禁止設定127.0.0.1
hostname = reg.mydomain.com

# 訪問協議,可設定 http,https
ui_url_protocol = http

# 郵件通知, 配置郵件通知。
email_server = smtp.mydomain.com
email_server_port = 25
email_username = [email protected]
email_password = abc
email_from = admin <[email protected]>
email_ssl = false

# harbor WEB UI登陸使用的密碼
harbor_admin_password = Harbor12345

# 認證方式,這裡支援多種認證方式,預設是 db_auth ,既mysql資料庫儲存認證。
# 這裡還支援 ldap 以及 本地檔案儲存方式。
auth_mode = db_auth

# ldap 伺服器訪問地址。
ldap_url = ldaps://ldap.mydomain.com
ldap_basedn = uid=%s,ou=people,dc=mydomain,dc=com

# mysql root 賬戶的 密碼
db_password = root123
self_registration = on
use_compressed_js = on
max_job_workers = 3 
verify_remote_cert = on
customize_crt = on

# 一些顯示的設定.
crt_country = CN
crt_state = State
crt_location = CN
crt_organization = organization
crt_organizationalunit = organizational unit
crt_commonname = example.com
crt_email = [email protected]

此處我們只修改hostname=192.168.20.17(私有倉庫主機ip)

4、更新生成相關配置檔案

./prepare

5、 更新docker-compose.yml

cp docker-compose.tpl docker-compose.yml

docker hub查詢docker-compose.yml配置檔案中所有映象的官方最新版本號,並將其替換掉__version__

yml配置檔案中我們只改相應映象對應版本號

image: vmware/harbor-log:v1.1.0
image: vmware/registry:photon-2.6.0
image: vmware/harbor-db:v1.1.0
image: vmware/harbor-adminserver:v1.1.0
image: vmware/harbor-ui:v1.1.0
image: vmware/harbor-jobservice:v1.1.0
image: vmware/nginx:1.11.5-patched

注:此處除了nginx和registry映象的版本不同外,其他映象的版本應該一致(用同一版本)

6、執行

必須在docker-compose.yml目錄下執行

docker-compose up -d

此時我們可以在瀏覽器中輸入:http://192.168.20.17:80進入harbor web管理後臺(80是docker-compose.yml 配置檔案中nginx容器的預設埠),預設的帳號密碼是admin, Harbor12345(如果你沒有修改harbor.cfg中的harbor_admin_password

檢視compose狀態

docker-compose ps

沒意外的話,應該全部狀態都是UP

需要修改web訪問埠的話,先在harbor.cfghostname=192.168.20.17:5000,再把docker-compose.yml 中的80埠改為5000,如下(只貼修改部分)

proxy:
    image: vmware/nginx:1.11.5-patched
    container_name: nginx
    restart: always
    volumes:
      - ./common/config/nginx:/etc/nginx:z
    networks:
      - harbor
    ports:
      - 5000:80
      - 443:443
      - 4443:4443

更多關於docker-compose命令相關引數選項可檢視官網

三、上傳和下載映象

1、上傳映象到私有倉庫

哪臺主機需要上傳映象到剛搭建的私有倉庫,就需要更改docker程序啟動的相關引數

A、修改docker守護程序啟動引數

OPTIONS新增--insecure-registry 192.168.20.17

vi /etc/sysconfig/docker

    OPTIONS='--selinux-enabled --log-driver=journald --signature-verification=false --registry-mirror=https://olzwzeg2.mirror.aliyuncs.com --insecure-registry 192.168.20.17'

注:--registry-mirror=https://olzwzeg2.mirror.aliyuncs.com是用於docker映象下載加速,如何設定映象加速

B、重啟docker程序

重啟程序前應先停掉所有在執行的容器

systemctl restart docker

C、修改docker映象tag標籤

格式為: userip/專案名/image名字:版本號(專案名為harbor中的專案名)

$ docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
docker.io/busybox   latest              00f017a8c2a6        5 weeks ago         1.11 MB
$ docker tag docker.io/busybox:latest 192.168.20.17/test/busybox:latest
D、登陸並push
$ docker login 192.168.20.17:80
$ docker push 192.168.20.17/test/busybox:latest

上傳完後在harbor web介面的test專案下則可以看到剛上傳的映象了

2、從私有倉庫下載映象

在需要下載映象的機器上,同樣需要修改docker程序引數(跟上傳映象到私有倉庫一樣操作進行修改)

docker pull 192.168.20.17/test/busybox:latest

相關推薦

Docker私有倉庫管理Harbor搭建

環境說明: Centos 7.2 主機IP: 192.168.20.17 一、安裝相關依賴 1、安裝docker yum -y install docker 啟動docker systemctl restart dock

Docker私有倉庫管理

前一篇文章說了怎樣搭建私有倉庫,但是在倉庫搭建好了之後發現維護倉庫裡的映象還是不太方便,docker 官方也沒有很好命令列介面來使用,只是提供了API,可以通過呼叫這些API來檢視和刪除映象,但是這些API實在是不好用,所以找了一下發現有個開源的python工具

Docker私有倉庫管理,刪除本地倉庫中的映象

一:Docker私有倉庫安裝 1、 下載映象是有映象倉庫: [[email protected] ~]# systemctl start docker #如果已經有映象了,強制刪除原來的映象的方式如下: [[email pro

docker 私有倉庫Harbor搭建與使用

login rbo scope entity 支持 bogon nal hub mtp Harbor搭建 下載Harbor: wget https://github.com/vmware/harbor/releases/ 配置Harbor t

Docker 私有倉庫 Harbor registry 安全認證搭建 [Https]

engine root sha2 create rtu r12 -i 啟動 鏡像倉庫 Harbor源碼地址:https://github.com/vmware/harborHarbort特性:基於角色控制用戶和倉庫都是基於項目進行組織的, 而用戶基於項目可以擁有不同的權限。

企業級Docker私有倉庫Harbor部署(http)

eat 部署 tar lib 圖片 默認 epo ble try 部署環境 Centos7.3 x64 docker-ce-17.06.0 docker-compose-1.15.0 Python-2.7.5(系統默認) Docker及Docker-compose安裝

搭建docker私有倉庫(用戶認證、web管理

docker倉庫 http equal rec pre art link spa code ubuntu:16.04 docker:18.06.0-ce docker倉庫服務器:192.168.83.102 ---------------------------------

docker私有倉庫搭建harbor

1、安裝docker-compose $ yum -y install epel-release $ yum -y install python-pip   $ pip install docker-compose

docker私有倉庫搭建管理

docker私有倉庫 (一) 安裝並執行registry 下載registry映象 docker pull registry:2 執行registry docker run -d -p 5000:5000 -v /app/env/docker/registry

Dockerdocker私有倉庫搭建(第十七篇)

Docker 已經提供了docker hub倉庫,第三方也提供相應的倉庫,比如網易,時速雲,阿里雲等,那為什麼還要搭建自己私有的倉庫呢?1)網路有關,有的時候你在的環境可能突然就斷網了,但是內部區域網還可以訪問,那麼你就可以去公司私有的倉庫去下載2)安全性,你自己或者公司的專

docker私有倉庫搭建 使用Portus管理docker registry 私有倉庫

 到此,Portus的安裝已經完成。 但是配置還沒有完成,修改修改docker的配置檔案 5,修改docker配置檔案 vim /lib/systemd/system/docker.service 將 --insecure-registry 192.168.223.132:5000 加到ExecSt

Docker私有倉庫搭建與介面化管理

  一、關於Registry 官方的Docker hub是一個用於管理公共映象的好地方,我們可以在上面找到我們想要的映象,也可以把我們自己的映象推送上去。 但是有時候我們的使用場景需要我們擁有一個私有的映象倉庫用於管理我們自己的映象。這個可以通過開源軟體Registry來達成目的。 &n

Harbor學習筆記】-教你快速搭建Docker私有倉庫

[TOC] Docker容器應用的開發和執行離不開可靠的映象管理,雖然Docker官方也提供了公共的映象倉庫,但是從安全和效率等方面考慮,部署我們私有環境內的Registry也是非常必要的。[Harbor](https://goharbor.io/) 是由VMware公司開源的企業級的Docker Regi

Docker私有倉庫Registry認證搭建

docker registry mongodb 前言: 首先,Docker Hub是一個很好的用於管理公共鏡像的地方,我們可以在上面找到想要的鏡像(Docker Hub的下載量已經達到數億次);而且我們也可以把自己的鏡像推送上去。但是,有的時候我們的使用場景需要擁有一個私有的鏡像倉庫用於管理

Docker私有倉庫搭建

docker 私有倉庫 由於公有倉庫有時連接會出現超時,下載速度慢等情況故搭建私有倉庫鏡像server端可以login官方的Doker Hub,可以pull,push和私有倉庫但client只能操作自己搭建的倉庫server 192.168.127.142client 192.168.1

CentOS7搭建Docker私有倉庫----Docker

服務 tar 由於 安全 lib mage 本地倉庫 用戶 鏡像 有時候使用Docker Hub這樣的公共倉庫可能不方便,這種情況下用戶可以使用registry創建一個本地倉庫供私人使用,這點跟Maven的管理類似。目前Docker Registry已經升級到了v2,最新版

Docker 私有倉庫搭建

docker 私有倉庫 registry Docker在2015年推出了distribution項目,即Docker Registry 2。相比於old registry,Registry 2使用Go實現,在安全性、性能方面均有大幅改進。Registry設計了全新的Rest API,並且在ima

CentOS 7 : Docker私有倉庫搭建和使用

docker reg expect use 啟動 倉庫 AR 通過 sel 系統環境: CentOS 7.2 192.168.0.179:docker倉庫 192.168.0.60:客戶端 安裝並啟動docker yum -y install docker system

Centos7 Docker私有倉庫搭建

Centos7 Docker私有倉庫搭建Centos7 Docker私有倉庫搭建 倉庫:集中存放鏡像的地方,可分為公共倉庫和私有倉庫(公共倉庫"http://hub.docker.com"或國內的"http://www.daocloud.io") 註冊服務器才是存放倉庫具體的服務器

Docker 私有倉庫搭建

down mark xen eric minutes ont gist epo man 我們在使用Docker時 下載鏡像一般都是在外網下載並使用。可是當我們沒有外網時我們不得不自己搭建私有倉庫。先看下流程圖: 下面我們開始搭建 私有倉庫1、安裝docker,並設置為開機自