1、配置虚拟机ping通百度
# 进入网关配置文件
vi /etc/sysconfig/network-scripts/ifcfg-ens33
添加DNS域名解析地址
DNS1=8.8.8.8
DNS2=114.114.114.114
DNS3=4.2.2.2
# 虚拟机重启网卡命令
service network restart
丢包率为0,成功ping通外网
2、在centos7中安装docker-ce
在centos7中现在已经不支持
yum报错( mirrorlist.centos.org)
解放方法
sudo sed -i s/mirror.centos.org/vault.centos.org/g /etc/yum.repos.d/*.repo
sudo sed -i s/^#.*baseurl=http/baseurl=https/g /etc/yum.repos.d/*.repo
sudo sed -i s/^mirrorlist=http/#mirrorlist=https/g /etc/yum.repos.d/*.repo
修改yum源地址,否则yum更新会很慢甚至失败
# 备份命令
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
# 下载yum源配置文件到本地
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
# 清空并更新缓存
yum clean all && yum makecache
# 更新yum
yum upgrade -y
# 安装docker运行需要的依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
# 设置docker-ce的安装来源,这里用的是阿里云
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 快速刷新docker元数据缓存,让来源地址生效
yum makecache fast
# 安装docker-ce
yum -y install docker-ce
# 启动docker
systemctl start docker
# 配置dockers镜像,为了之后快速拉取镜像
su root
vim /etc/docker/daemon.json
# 加入以下配置项
{
"registry-mirrors": [
"https://dockerproxy.com",
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com",
"https://ccr.ccs.tencentyun.com"
]
}
# 重启docker,使之生效
systemctl restart docker
3、在centos7中安装docker-compose
# 下载docker-compose包
wget https://github.com/docker/compose/releases/download/v2.15.1/docker-compose-linux-x86_64
# 无法现在的话,可以先本地下载然后上传到虚拟机中
# 我将该文件放在了/usr/local/bin当中
cd /usr/local/bin
# 修改权限
chmod +x /usr/local/bin/docker-compose
# 查看dokcer-compose版本
docker-compose --version
4、在centos7中安装harbor
在线下载很慢,可以自己百度一个harbor-offline的安装包,我是从百度云上下载的,推荐在百度上搜索“harbor安装包 百度云下载”
如图上传到了虚拟机中
# 解压压缩包
tar -zxvf harbor-offline-installer-v2.0.1.tgz
# 进入到对应的目录下
cd harbor
# 备份并修改harbor的配置文件
cp harbor.yml.tmpl harbor.yml
mkdir -p /opt/application/harbor //用于存放harbor的持久化数据
harbor.yml配置文件主要修改参数如下:
hostname: 192.168.1.5 //设置访问地址,可以使用ip、域名,不可以设置为127.0.0.1或localhost。默认情况下,harbor使用的端口是80,若使用自定义的端口,除了要改docker-compose.yml文件中的配置外,这里的hostname也要加上自定义的端口,否则在docker login、push时会报错
#http配置
http:
# port for http, default is 80. If https enabled, this port will redirect to https port
port: 80
#https配置(如不需要可不配置,注释掉)
# https related config
#https:
# https port for harbor, default is 443
#port: 443
# The path of cert and key files for nginx
#certificate: /your/certificate/path
#private_key: /your/private/key/path
#external_url: https://reg.mydomain.com:8433 //如果要启用外部代理,比如外层的NGINX、LB等,请取消注释external_url,当它启用时,hostname将不再使用。
harbor_admin_password: Harbor12345 //admin密码
#数据库配置
database:
# The password for the root user of Harbor DB. Change this before any production use.
password: root123
# The maximum number of connections in the idle connection pool. If it <=0, no idle connections are retained.
max_idle_conns: 50
# The maximum number of open connections to the database. If it <= 0, then there is no limit on the number of open connections.
# Note: the default number of connections is 100 for postgres.
max_open_conns: 100
#持久化数据目录
data_volume: /opt/application/harbor
上面必做两件事
1、修改hostname为自己虚拟机的ip地址
2、将https下的条目全都注释掉
# 修改docker配置,更改源地址,后面要在docker中拉取harbor相关镜像
vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://cyowm7vy.mirror.aliyuncs.com"]
}
# 重新加载配置文件使之生效
systemctl daemon-reload
systemctl restart docker
# 进入harbor目录下
cd /usr/local/harbor
# 进行安装操作
sh install.sh
# cd soft/harbor //切换到harbor安装包目录
# docker-compose stop //停止Harbor
# docker-compose start //启动Harbor
在浏览器访问对应的虚拟机IP地址和端口号
默认账号:admin
默认密码:Harbor12345
(注意大小写)
4、harbor简单使用
(1)新建项目,公开
(2)创建用户
(3)项目关联用户
将新建的项目与新建的用户进行关联
(4)在另外一台虚拟机中,将该虚拟机中的docker镜像上传到harbor当中
1、在另外一台虚拟机的中配置insecure-registries
insecure-registries 是 Docker 的配置文件中的一个选项,用于指定不使用 SSL 的仓库地址列表。Docker 客户端会从远程仓库拉取镜像,如果远程仓库没有启用 SSL,或者你不信任服务器的 SSL 证书,你可以将仓库地址添加到 insecure-registries 中,这样 Docker 客户端就会允许不安全的连接。
# 进入配置文件
vim /etc/docker/daemon.json
# 增添对应配置,对应上面的截图进行修改
"insecure-registries": ["harbor.domain.io"]
# 重启docker服务使之生效
service docker restart
2、在另外一台虚拟机中使用docker登录harbor仓库
# 根据harbor仓库的ip地址进行修改
docker login 192.168.1.5:80
# 下一步输入账号和密码
# 当时自己在harbor中创建的用户的账户名和密码
登陆成功
3、在另外一台虚拟机中上传docker images到harbor仓库
# 找一个镜像并标记
docker tag docker_kk 192.168.1.5:80/jenkins/docker_test:v0
# 推动到harbor仓库
docker push 192.168.1.5:80/jenkins/docker_test:v0
注意:harbor中有相关命令的命令行提示,但是记得要进行镜像名字对应的修改,另外也要添加上harbor仓库对应的端口号
push成功
在harbor中可以看到刚push上去的docker镜像
4、拉取harbor中的镜像到虚拟机中
在harbor中复制拉去命令,注意命令中可能没有harbor的端口号要记得加上
拉取harbor镜像中成功