Kubernetes集群搭建私有仓库(三)
前言
这篇来介绍一下搭建K8S的私有仓库,这样团队开发的时候就可以将镜像放置在我们的私有仓库中啦
仓库搭建
1、使用CentOS7搭建一个Linux,配置IP地址
这里设置IP地址为192.168.81.200
2、设置主机名为hub.xt.com
hostnamectl set-hostname hub.xt.com
3、升级系统内核
CentOS 7.x系统自带的3.10x内核存在一些bugs,容易导致后续安装的Docker出现问题
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm # 安装完成后检查 /boot/grub2/grub.cfg 中对应内核 menuentry中是否包含 initrd16配置,如果没有,再安装一次。 yum --enablerepo=elrepo-kernel install -y kernel-lt # 设置开机从新内核启动 grub2-set-default "CentOS Linux (4.4.245-1.el7.elrepo.x86_64) 7 (Core)" # 重启 reboot
4、安装Docker软件
这个在上一篇已经讲过了,直接贴代码
yum install -y yum-utils device-mapper-persistent-data lvm2 yum-config-manager \ --add-repo \ http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo yum update -y && yum install -y docker-ce reboot
grub2-set-default "CentOS Linux (4.4.245-1.el7.elrepo.x86_64) 7 (Core)"
# 启动dokcer systemctl start docker && systemctl enable docker ## 创建 /etc/docker 目录 mkdir /etc/docker # 配置daemon cat > /etc/docker/daemon.json <<EOF { "exec-opts":["native.cgroupdriver=systemd"], "log-driver":"json-file", "log-opts":{ "max-size":"100m" } } EOF # 创建目录,存放docker的配置文件 mkdir -p /etc/systemd/system/docker.service.d # 重启docker服务 systemctl daemon-reload && systemctl restart docker && systemctl enable docker
5、配置hosts和daemon.json
首先,先来配置一下windows的hosts文件
C:\Windows\System32\drivers\etc
接着就是linux的hosts和docker的daemon.json
这样我们的k8s集群就认可我们接下来要做的假证书。
6、导入docker-compose
mv docker-compose /usr/local/bin/
chmod a+x /usr/local/bin/docker-compose
7、导入harbor-offline-installer-v1.2.0.tgz
tar -zxvf harbor-offline-installer-v1.2.0.tgz mv harbor /usr/local/ cd /usr/local/harbor ls vim harbor.cfg # 修改域名和协议,见下图 mkdir -p /data/cert # 创建存放证书的路径 cd !$
8、创建证书
# 设置私钥密码,就123456吧 openssl genrsa -des3 -out server.key 2048 # 创建一个server.csr,密码123456 openssl req -new -key server.key -out server.csr # 备份 cp server.key server.key.org # 转换成证书,让私钥的密码退掉,因为docker启动时私钥的证书有密码,会启动不成功 openssl rsa -in server.key.org -out server.key # 证书签名 openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt # 授权 chmod a+x * cd - ./install.sh docker ps -a cd /data/cert chmod -R 777 /data/cert
上面的命令执行完就配置成功了,可以在外网通过hub.xt.com访问私有仓库了
用户名是admin,密码写在harbor.cfg中,默认是Harbor12456
9、推送镜像
这里显示了怎么推送镜像,在我们的仓库里面拉取一个镜像,然后打标推送上来,我们来演示一个
登录一下我们的仓库,并且打标签推送
就已经推送成啦