【gitlab+jenkins+docker】第一节 基础环境介绍与准备

【gitlab+jenkins+docker】手把手教你搭建基于gitlab+jenkins+docker的项目的自动化部署流程

架构

本套自动化流程设计如图:
在这里插入图片描述
其中gitlab是用来存放项目代码的,jenkins从gitlab上拉取代码完成打包、推送及触发后续动作,docker作为承载项目的容器,可以短时间内复制和重现。

环境介绍

博主搭建本套流程选用的是Centos7,具体的环境清单如下:

# 宿主机一切操作均使用root用户
linux: Centos7
docker: 1.13.1
docker-compose: 1.22.0
java: 1.8.0_111
python: 2.7.5(centos7自带,无需安装)
宿主机IP:10.20*.4.5*
docker网卡名: aidata_network
aidata_network网段: 10.111.113.0/24
mysql: 5.5.62

docker安装

利用yum安装docker,输入命令回车并等待,命令如下:

# 宿主机一切操作均使用root用户
[root@JackRoy ~]# yum install -y docker

docker安装成功后,为了获得较快的docker镜像源下载速度,将docker镜像源修改为国内的,执行:

# 宿主机一切操作均使用root用户
[root@JackRoy ~]# vim /etc/docker/daemon.json

添加:

{
  "registry-mirrors": ["https://registry.docker-cn.com"]
}

保存退出后重启docker,这里将操作docker的命令一并贴出:

# 宿主机一切操作均使用root用户
[root@JackRoy ~]# systemctl start docker
[root@JackRoy ~]# systemctl stop docker
[root@JackRoy ~]# systemctl restart docker

docker-compose安装(二进制)

从githup上拉取二进制文件,并存放在我们本地的/usr/local/bin下(保证全局性):

# 宿主机一切操作均使用root用户
 # uname -s操作系统名称
 # uname -m 查看操作系统类型,即是64位还是32位
[root@JackRoy ~]# curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
 # 赋予可执行权限
[root@JackRoy ~]# chmod +x /usr/local/bin/docker-compose
 # 查看版本
 [root@JackRoy ~]# docker-compose --version

成功打印docker-compose版本后,说明已安装成功。

创建bridge 网络

创建名为aidata_network网络命令:

docker network create  --subnet=10.111.113.0/24 aidata_network

查看docker网络命令:

docker network ls

查看aidata_network网络命令:

docker network inspect aidata_network

体执行明细:

# 宿主机一切操作均使用root用户
[root@JackRoy ~]# docker network create  --subnet=10.111.113.0/24 aidata_network
b2179332c14f8773a8edd24cdb53e944c7c7d5ad9d572c913473534071b4ef31
[root@JackRoy ~]# docker network ls
NETWORK ID          NAME                DRIVER              SCOPE
b2179332c14f        aidata_network      bridge              local
120ea215a22d        bridge              bridge              local
29905d93f3ee        host                host                local
e036afc588b2        none                null                local
[root@JackRoy ~]# docker network inspect aidata_network
[
   {
       "Name": "aidata_network",
       "Id": "b2179332c14f8773a8edd24cdb53e944c7c7d5ad9d572c913473534071b4ef31",
       "Created": "2019-12-27T16:15:32.196483379+08:00",
       "Scope": "local",
       "Driver": "bridge",
       "EnableIPv6": false,
       "IPAM": {
           "Driver": "default",
           "Options": {},
           "Config": [
               {
                   "Subnet": "10.111.113.0/24"
               }
           ]
       },
       "Internal": false,
       "Attachable": false,
       "Containers": {},
       "Options": {},
       "Labels": {}
   }
]

跳转

第一节 基础环境介绍与准备
第二节 docker版gitlab安装和配置
第三节 docker版jenkins安装和配置
第四节 docker版mysql安装和配置
第五节 docker信息明细表设计与实现(含收集脚本)
第六节 docker容器自动化生成脚本
第七节 自动生成docker容器并启动项目

发布了31 篇原创文章 · 获赞 21 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/Jack_Roy/article/details/103633820