環(huán)境準(zhǔn)備
Docker安裝
現(xiàn)在docker安裝非常的方便,只要執(zhí)行幾個(gè)命令就可以了内地,具體的安裝過程以及被集成到了腳本里了典徘。有興趣的可以自己看一看。
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
#or 國內(nèi)源
curl -sSL https://get.daocloud.io/docker | sh
# 查看版本
docker -v #Docker version 20.10.14, build a224086
#啟動(dòng)docker
systemctl start docker // service docker start
#查看docker狀態(tài)
systemctl status docker // service docker status
Docker-compose 安裝
下載需要docker-compose版本
docker-compose 官方文檔
docker-compose 下載地址
docker-compose 發(fā)版地址
# 下載
sudo curl -L https://github.com/docker/compose/releases/download/v2.3.4/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
#創(chuàng)建軟連接
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
#添加執(zhí)行權(quán)限
sudo chmod +x /usr/local/bin/docker-compose
# 查看版本
docker-compose --version # Docker Compose version v2.3.4
安裝harbor
簡介
harbor Registry(又稱 Harbor 云原生制品倉庫或 Harbor 鏡像倉庫)由 VMware 公司中國研發(fā)中心云原生實(shí)驗(yàn)室原創(chuàng)腺律,并于 2016 年 3 月開源。Harbor 在 Docker Distribution的基礎(chǔ)上增加了企業(yè)用戶必需的權(quán)限控制宜肉、鏡像簽名匀钧、安全漏洞掃描和遠(yuǎn)程復(fù)制等重要功能,還提供了圖形管理界面及面向國內(nèi)用戶的中文支持谬返,開源后迅速在中國開發(fā)者和用戶社區(qū)流行之斯,成為中國云原生用戶的主流容器鏡像倉庫。
選擇它的理由
- 有界面方便操作遣铝。
- 支持用戶管理佑刷、訪問控制、活動(dòng)監(jiān)控酿炸、實(shí)例間復(fù)制等高級(jí)功能瘫絮。
- 支持多租戶。
- 安裝方便填硕,容易上手 ^ _ ^麦萤。
安裝
harbor 官網(wǎng)地址
harbor 發(fā)版地址
從上面的發(fā)板地址選擇一個(gè)我們需要的版本進(jìn)行下載,因?yàn)槲业木W(wǎng)絡(luò)還可以,在這里我就選擇在線安裝進(jìn)行演示了,需要的小伙伴可以根據(jù)自己的網(wǎng)絡(luò)狀況選擇在線或者離線安裝的安裝包频鉴。根據(jù)個(gè)人習(xí)慣栓辜,我喜歡將這類服務(wù)安裝在/usr/local目錄下。
# 切換目錄
cd /usr/local
# 下載文件
wget https://github.com/goharbor/harbor/releases/download/v2.4.2/harbor-online-installer-v2.4.2.tgz
# 解壓文件
tar zxvf harbor-online-installer-v2.4.2.tgz
# 進(jìn)入解壓后文件目錄
cd harbor
# 查看文件目錄
ls -l
# 目錄內(nèi)容
-rw-r--r-- 1 root root 3361 3月 15 11:51 common.sh
-rw-r--r-- 1 root root 9668 3月 15 11:51 harbor.yml.tmpl # 配置文件模版
-rwxr-xr-x 1 root root 2500 3月 15 11:51 install.sh # 在線安裝腳本
-rw-r--r-- 1 root root 11347 3月 15 11:51 LICENSE
-rwxr-xr-x 1 root root 1881 3月 15 11:51 prepare # 預(yù)安裝準(zhǔn)備腳本
# 這個(gè)時(shí)候我們先配置配置文件
# 復(fù)制一份配置文件
cp harbor.yml.tmpl harbor.yml
# 編輯配置文件 修改hostname和harbor_admin_password垛孔,我這里將hostname改為ip地址
vi harbor.yml
# 上面我們已經(jīng)完成了配置文件的配置 在這里我們執(zhí)行預(yù)安裝準(zhǔn)備腳本進(jìn)行校驗(yàn)
./prepare
# 等待執(zhí)行完成藕甩,執(zhí)行完成后,執(zhí)行在線安裝腳本
./install.sh
# 至此我們已經(jīng)完成了harbor的安裝周荐∠晾常可以打開剛剛我們配置hostname進(jìn)行訪問了。
# 其他
# 我們可以通過 docker ps 查看一下harbor服務(wù)啟動(dòng)了那些容器
docker ps
# 我們可以發(fā)現(xiàn)harbor 依賴了很多服務(wù)概作,那我們?cè)撛趺垂芾磉@些服務(wù)呢腋妙,總不可能一個(gè)一個(gè)起停。那樣太麻煩了讯榕。
# 這個(gè)時(shí)候 我們 ls -l 看一下文件目錄骤素,會(huì)發(fā)現(xiàn)多出一個(gè) docker-compose.yml文件
# 那我們j就可以通過dokcer-compose進(jìn)行管理
# 如果是處在docker-compose.yml所在的文件目錄,可以通過以下命令進(jìn)行管理愚屁,如果不是 需要加上參數(shù):[-f 文件路徑]
docker-compose up -d # 后臺(tái)啟動(dòng)
docker-compose stop # 停止服務(wù)
docker-compose restart # 重啟服務(wù)
使用
打開網(wǎng)頁
新建一個(gè)項(xiàng)目
查看推送命令
#拉去鏡像
docker pull alpine
#打上我們自己的tag
docker tag alpine:latest 192.168.8.2:80/test/alpine:latest
#登錄我們自己的倉庫
docker login ip:prot
#上傳我們的鏡像
docker push 192.168.8.2:80/test/alpine:latest
我們會(huì)發(fā)現(xiàn)我們上傳失敗济竹,因?yàn)閐ocker默認(rèn)是https的驗(yàn)證,而我們是沒有配置對(duì)應(yīng)的證書的霎槐,所以我們?cè)赿ocker中加入一項(xiàng)配置送浊,讓docker忽略我們的驗(yàn)證。
# 配置/etc/docker/daemon.json
vi /etc/docker/daemon.json
# 內(nèi)容
{
"registry-mirrors": ["https://0nth4654.mirror.aliyuncs.com","http://ef017c13.m.daocloud.io"],
"insecure-registries": ["192.168.8.2:80"] # 加入的內(nèi)容為我們配置的IP地址+端口
}
# 重啟docker使配置文件生效
systemctl restart docker
# 重啟harbor 服務(wù)
docker-compose up -d
# 重新上傳
docker push 192.168.8.2:80/test/alpine:latest
去倉庫驗(yàn)證鏡像是否上傳成功丘跌,上傳成功袭景。
至此,我們已經(jīng)完成了私有倉庫的搭建了闭树。謝謝大家的閱讀耸棒。有什么問題大家可以在評(píng)論區(qū)補(bǔ)充。