k8s和harbor的集成_爱威尔-基于kubernetes集群的项目持续集成(gitlab+harbor+Jenkins)安装...

这个算是基于kubernetes集群的项目持续集成的前导篇,先把这用环境搭建好我们后面就可以专注做基于k8s的docker化项目持续集成了。

gitlab安装

https://about.gitlab.com/installation/#centos-7

参考这个安装(安装方式很多docker、k8s都有),我这里用yum的形式,也比较简单。

基本就这几个命令:

sudo yum install

-y curl policycoreutils-python openssh-server

sudo systemctl

enable sshd

sudo systemctl

start sshd

我这里的防火墙都已经关闭了

sudo yum install

postfix

sudo systemctl

enable postfix

sudo systemctl

start postfix

到这里下面的步骤就不要用官网上面的了(网络不通大家都知道的),

直接到下面的网址上下载rpm文件,我们用rpm来安装:

https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7

rpm -ivh gitlab-ce-10.2.4-ce.0.el7.x86_64.rpm

gitlab-ctl reconfigure

gitlab-ctl restart

如果要添加域名修改(不设置域名IP地址是必须的这个地方必须要改的) :vim

/etc/gitlab/gitlab.rb

如果端口冲突的话修改这里(注意看目录):

访问:http://192.168.38.57:81/

第一次需要修改root密码,成功之后就可以用 用户名:root,密码:(自己修改的密码)登录了。

root账号做好不要直接使用而是先注册一个用户,用这个用户来创建项目。

新建一个project之后会在最上面提示ssh之类的,就做下面操作:

ls -al ~/.ssh,检查是否显示有id_rsa.pub或者id_dsa.pub存在

ssh-keygen -t rsa -C ”634623907@qq.com”

注意:e-mail地址

cat ~/.ssh/id_rsa.pub

最后就是用id_rsa.pub作为ssh。

到这里基本就算可以了。

harbor安装

先安装docker,这个我就不重复了。

在安装docker-compose(这个也没什么可说的):

yum -y install openssl

openssl-devel

yum -y install

epel-release

yum install python-pip

pip install docker-compose

docker-compose --version

我直接是下载的最新的:

https://storage.googleapis.com/harbor-releases/release-1.5.0/harbor-offline-installer-v1.5.0.tgz

解压

换成你的域名 或IP都行,注意我这里用的是http

我这里也换了这几个默认的端口,因为我这里有冲突

默认用户名 密码

第一次启动按照这个步骤:

# 停止容器

docker-compose

stop

# 后台启动容器

docker-compose up

-d

我本来是想用这个命令来做开机自动启动的,看来是不行

http://192.168.38.56:1180

里面的操作就是可视化的了都能看懂

下面我们就尝试这往我们的私有docker镜像仓库里面存放我们的docker镜像了。

基础镜像制作

首先下载centos镜像:

https://hub.docker.com/_/centos/

docker pull centos

把centos存放到自己的私有仓库里面

之前说过我用http请求,docker启动里面需要加入这些参数。

docker tag SOURCE_IMAGE[:TAG]

hub.weir.com:1180/spring-cloud/IMAGE[:TAG]

docker push

hub.weir.com:1180/spring-cloud/IMAGE[:TAG]

就这两句,告诉我们怎么将镜像放到我们的私有镜像仓库。

docker tag centos:latest

hub.weir.com:1180/spring-cloud/centos:latest

push之前先登录(账号密码就是你在harbor里面添加的用户名和密码):

docker login hub.weir.com:1180

[root@k6 harbor]# docker login

hub.weir.com:1180

Username: weir

Password:

Login Succeeded

docker push

hub.weir.com:1180/spring-cloud/centos:latest

制作jdk镜像:

FROM

centos:latest

MAINTAINER

weir  634623907@qq.com

#把java添加到容器中

ADD jdk-8u171-linux-x64.tar.gz

/usr/local/

#配置java环境变量

ENV JAVA_HOME

/usr/local/jdk1.8.0_171

ENV CLASSPATH

$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

ENV PATH $PATH:$JAVA_HOME/bin

[root@k6 home]# docker build -t jdk:1.8.0_171 .

Sending build context to Docker daemon 1.067GB

Step 1/6 : FROM centos:latest

---> e934aafc2206

Step 2/6 : MAINTAINER weir 634623907@qq.com

---> Running in ccfe15e01f91

Removing intermediate container ccfe15e01f91

---> af5f940d9915

Step 3/6 : ADD jdk-8u171-linux-x64.tar.gz /usr/local/

---> ec135310dc0c

Step 4/6 : ENV JAVA_HOME /usr/local/jdk1.8.0_171

---> Running in 960a7d182ed2

Removing intermediate container 960a7d182ed2

---> 86ed66bca24b

Step 5/6 : ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

---> Running in 223c61e8e2e0

Removing intermediate container 223c61e8e2e0

---> d28b2cabc62d

Step 6/6 : ENV PATH $PATH:$JAVA_HOME/bin

---> Running in 33244d523c25

Removing intermediate container 33244d523c25

---> a56c94c2f562

Successfully built a56c94c2f562

Successfully tagged jdk:1.8.0_171

[root@k6 home]# docker images

REPOSITORY TAG IMAGE ID CREATED SIZE

jdk 1.8.0_171 a56c94c2f562 7 seconds ago 586MB

vmware/redis-photon v1.5.0 7c03076402d9 3 weeks ago 207MB

vmware/clair-photon v2.0.1-v1.5.0 7ae4e0670a3f 3 weeks ago 301MB

vmware/notary-server-photon v0.5.1-v1.5.0 0b2b23300552 3 weeks ago 211MB

vmware/notary-signer-photon v0.5.1-v1.5.0 67c41b4a1283 3 weeks ago 209MB

vmware/registry-photon v2.6.2-v1.5.0 3059f44f4b9a 3 weeks ago 198MB

vmware/nginx-photon v1.5.0 e100456182fc 3 weeks ago 135MB

vmware/harbor-log v1.5.0 62bb6b8350d9 3 weeks ago 200MB

vmware/harbor-jobservice v1.5.0 aca9fd2e867f 3 weeks ago 194MB

vmware/harbor-ui v1.5.0 1055166068d0 3 weeks ago 212MB

vmware/harbor-adminserver v1.5.0 019bc4544829 3 weeks ago 183MB

vmware/harbor-db v1.5.0 82354dcf564f 3 weeks ago 526MB

vmware/mariadb-photon v1.5.0 403e7e656499 3 weeks ago 526MB

vmware/postgresql-photon v1.5.0 35c891dea9cf 3 weeks ago 221MB

vmware/harbor-migrator v1.5.0 466c57ab0dc3 3 weeks ago 1.16GB

vmware/photon 1.0 4b481ecbef2a 4 weeks ago 130MB

hub.weir.com:1180/library/centos latest e934aafc2206 7 weeks ago 199MB

hub.weir.com:1180/spring-cloud/centos latest e934aafc2206 7 weeks ago 199MB

centos latest e934aafc2206 7 weeks ago 199MB

[root@k6 home]# docker tag jdk:1.8.0_171 hub.weir.com:1180/spring-cloud/jdk:1.8.0_171

[root@k6 home]# docker push hub.weir.com:1180/spring-cloud/jdk:1.8.0_171

The push refers to repository [hub.weir.com:1180/spring-cloud/jdk]

8186ecdf12d5: Pushed

43e653f84b79: Mounted from spring-cloud/centos

1.8.0_171: digest: sha256:f5ccaf784110455bbc71ebf66981b27f910591992d170f1bfebf15a66f953e66 size: 742

[root@k6 home]#

删除tag:

docker rmi -f

hub.weir.com:1180/spring-cloud/jdk

这个时候我们就知道我自己写的工程怎么docker化了。

jenkins安装

我这里还是用yum来安装Jenkins,需要说明的是yum来安装Jenkins用的jdk是openJDK

sudo wget -O

/etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo

sudo rpm --import

https://pkg.jenkins.io/redhat-stable/jenkins.io.key

yum install jenkins

安装的java是openJDK(oracleJDK的不行)

yum install java

root这个要修改,端口这个看自己的是否被占用。

·

sudo service jenkins start/stop/restart

·

sudo chkconfig jenkins on

Jenkins本身的操作这个网上文章就比较多了我这里就不做多说明了,后面我们做持续集成时再细说。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值