主机环境
Ip:192.168.1.36 2c 4g
关闭selinux、firewalld、swap
systemctl stop firewalld
setenforce 0 #临时设置,永久设置编辑/etc/selinux/config
swapoff -a #临时设置,永久设置/etc/fatab
下载软件包
wget https://download.docker.com/linux/static/stable/x86_64/docker-19.03.9.tgz
解压软件包
tar -xf docker-19.03.9.tgz
将解压后的执行文件拷贝到/usr/bin/目录下
cp docker/* /usr/bin/
添加systemd管理配置文件
cat > /usr/lib/systemd/system/docker.service << EOF
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
EOF
配置docker访问镜像地址
cat > /etc/docker/daemon.json << EOF
{
"registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"]
}
EOF
加载systemd配置
systemctl daemon-reload
启动docker服务并设置为开机自启
systemctl enable docker.service
systemctl start docker
部署docker-compose
下载docker-compose
curl -L https://github.com/docker/compose/releases/download/v2.5.0/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
增加执行权限
chmod +x /usr/local/bin/docker-compose
执行docker-compose查看版本
/usr/local/bin/docker-compose --version
部署harbor
下载软件包(从giubub进行查找合适的版本)
https://github.com/goharbor/harbor/releases
解压harbor软件包
tar -xf harbor-offline-installer-v2.5.0.tgz
修改harbor配置文件(两个访问模式HTTP和HTTPS模式)
采用HTTP配置部署(采与用HTTPS配置部署二选一)
修改配置harbor.yml文件(采用默认的80端口)
cd harbor
mv harbor.yml.tmpl harbor.yml
vi harbor.yml
#修改harbor的主机地址
#修改harbor的访问端口
#注释掉https模块区域
#修改harbor管理员admin的登录密码
#修改harbor的数据存放目录
采用HTTPS配置部署(与采用HTTP配置模式二选一)
修改配置harbor.yml文件(采用443端口)
cd harbor
mv harbor.yml.tmpl harbor.yml
vi harbor.yml
#修改harbor的主机地址
#修改harbor的https访问端口
#打开注释https模块区域
#修改harbor管理员admin的登录密码
#修改harbor的数据存放目录
创建harbor证书读取目录
mkdir -p /apps/harbor/cert/
创建https协议自签证书
cd /apps/harbor/cert/
openssl req -newkey rsa:2048 -nodes -keyout harbor-server.key -x509 -days 365 -out harbor-server.crt
执行安装
./install.sh
查看是否启动成功
docker ps
注意事项
注意:
如果开启了https协议,证书是自签证书,访问依然会提示网站不安全提示
如果开启了https协议,docker如果使用此harbor地址,登陆时需要指定https,如正确登录方式“docker login https://192.168.1.36 -u admin -p Harbor12345”,此时是不需要指定443端口,如果使用“docker login 192.168.1.36:443 admin -p Harbor12345”或者“docker login 192.168.1.36 admin -p Harbor12345”是错误的。
如果针对harbor开启了https协议,客户端上传镜像到harbor,镜像名称需要注意,是不需要指定毒443端口,也不需要指定https://协议头,正确的推送harbor镜像名称格式为“192.168.1.36/harbor项目名称/自定义名称:标签”,例如一个镜像名称:标签为“nginx:latest”,harbor的项目名称为“nginx-version”,正确的镜像名称应该改为“docker tag nginx:latest 192.168.1.36/nginx-version/nginx:latest”。错误写法1名称只写到项目名称“docker tag nginx:latest 192.168.1.36/nginx-version:latest”;错误写法2名称写上了https://协议头“docker tag nginx:latest https://192.168.1.36/nginx-version:latest”;错误写法3名称制定了443端口“docker tag nginx:latest 192.168.1.36:443/nginx-version:latest”
如何配置harbor的私有仓库地址:
编辑docker的daemon.json
vi /etc/docker/daemon.json
{
"registry-mirrors": ["https://registry.docker-cn.com","https://b9pmyelo.mirror.aliyuncs.com"],
"insecure-registries": ["https://192.168.1.36","https://域名"]
}
#注意域名无要求可以不写,