devops--搭建环境--全流程

1.git安装

在项目的Code(编码)阶段,我们需要将不同版本的代码存储到一个仓库中,常见的版本控制工具就是SVN或者Git,这里我们采用Git作为版本控制工具,GitLab作为远程仓库。

git的安装:参考官网,无脑下一步即可
官网地址:https://git-scm.com/

2.docker

2.1 docker安装

复制代码
#下载Docker依赖组件
yum -y install yum-utils device-mapper-persistent-data lvm2
#设置下载Docker的镜像源为阿里云
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#安装docker
yum -y install docker-ce
#开机自启
systemctl enable docker --now
systemctl status docker
复制代码

2.2 Docker-compose安装

wget https://github.com/docker/compose/releases/download/v2.5.0/docker-compose-linux-x86_64
mv docker-compose-linux-x86_64 docker-compose
mv docker-compose /usr/bin
docker-compose version #查看版本

 

3.GitLab安装

3.1拉取镜像

# 查看镜像
docker search gitlab

# 拉取镜像
docker pull gitlab/gitlab-ce

3.2 准备docker-compose.yml文件

 文档中的external_url等参考自己服务器上的ip
复制代码
version: '3.1'
services:
  gitlab:
    image: 'gitlab/gitlab-ce:latest'
    container_name: gitlab
    restart: always
    environment:
      GITLAB_OMNIBUS_CONFIG: |
        external_url 'http://192.168.11.11:8929'
        gitlab_rails['gitlab_shell_ssh_port'] = 2224
    ports:
      - '8929:8929'
      - '2224:2224'
    volumes:
      - './config:/etc/gitlab'
      - './logs:/var/log/gitlab'
      - './data:/var/opt/gitlab'
#privileged: true
 
复制代码

3.3 启动容器并访问

# 启动容器(初次启动,时间偏久)
docker-compose up -d

访问:http://192.168.11.11:8929即可。

效果:

3.4 查看初始用户名和密码

docker exec -it gitlab cat /etc/gitlab/initial_root_password

3.5 登录并修改密码

以root身份登录gitlab,首次登录需要修改密码

 

 

4. maven安装配置

Jenkins中对代码进行构建需要Maven的环境,而Maven需要Java的环境,接下来需要在Jenkins机器上安装JDK和Maven。

后续挂载到jenkins的容器数据卷中。

复制代码
maven下载地址:https://maven.apache.org/download.cgi
jdk下载地址:https://www.oracle.com/java/technologies/javase/javase8u211-later-archive-downloads.html
#解压压缩包,并配置Maven的settings.xml(追加)

    <!-- 阿里云镜像地址 -->
    <mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>
    </mirror>


    <!-- JDK1.8编译插件 -->
    <profile>
      <id>jdk-1.8</id>
      <activation>
        <activeByDefault>true</activeByDefault>
        <jdk>1.8</jdk>
      </activation>
      <properties>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
      </properties>
      </profile> 

复制代码

 

5. jenkins安装配置

5.1 拉取jenkins镜像

docker pull jenkins/jenkins

5.2 准备docker-compose.yml

复制代码
version: "3.1"
services:
  jenkins:
    image: jenkins/jenkins
    container_name: jenkins
    ports:
      - 8080:8080
      - 50000:50000
    volumes:
      - ./data/:/var/jenkins_home/
    mem_limit: 8g
    security_opt:
      - seccomp:unconfined
复制代码

5.3 设置数据卷data目录的权限

chmod -R a+w data/

5.4 启动容器

docker-compose up -d

5.5 设置Jenkins的下载地址

由于Jenkins需要下载大量内容,但是由于默认下载地址下载速度较慢,需要重新设置下载地址为国内镜像站后再重启

复制代码
# 修改数据卷data中的hudson.model.UpdateCenter.xml文件
<?xml version='1.1' encoding='UTF-8'?>
<sites>
  <site>
    <id>default</id>
    <url>https://updates.jenkins.io/update-center.json</url>
  </site>
</sites>
# 将下载地址替换为http://mirror.esuni.jp/jenkins/updates/update-center.json
<?xml version='1.1' encoding='UTF-8'?>
<sites>
  <site>
    <id>default</id>
    <url>http://mirror.esuni.jp/jenkins/updates/update-center.json</url>
  </site>
</sites>
# 清华大学的插件源也可以https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
复制代码

5.6 重启jenkins

5.7 查看JenKins登录密码,并登录JenKins然后安装对应插件

docker exec -it jenkins cat /var/jenkins_home/secrets/initialAdminPassword

输入管理员密码 - 选择插件来安装 - 推荐插件安装

然后等待插件安装成功进入首页。(可能会出现下载失败的插件,重新下载即可)

5.8 创建管理员用户,设置jenkinsURL

5.9 Jenkins配置JDK&Maven并保存

将maven和jdk移动至jenkins数据卷data下

 

 

 

6. Jenkins实现拉取-构建-发布

准备好GitLab仓库中的项目,并且通过Jenkins配置实现当前项目的DevOps流程。

构建Maven工程发布到GitlLab、Gitee、GitHub均可(gitlab借鉴https://www.cnblogs.com/liweifeng888/p/17754804.html)

6.1 拉取代码

  1. 点击Jenkins左侧新建任务(选择自由风格的项)

          2.配置源码拉取地址

私有云需要账户认证(gitlab登录账户密码),配置后点击Credentials选择使用

 

             3. 点击立即构建,查看构建日志

 

6.2 构建代码

配置Jenkins任务构建代码

 立即构建测试,查看target下的jar包

 

6.3 配置Publish发布&远程操作

jar包构建好后,就可以根据情况发布到测试或者生产环境,此处需要用到之前下载好的插件Publish Over SSH

配置Publish Over SSH连接测试环境、生产环境

 配置任务构建后的操作,发布jar包到目标服务

 

 注意:Jenkins构建过程中,它以独立的进程运行,并且可能具有不同的环境配置。这意味着Jenkins可能无法直接访问系统环境变量中的Java路径,所以要写绝对路径。若指令执行失败,可以从绝对路径方向排查。

 立即构建任务,并去目标服务查看

 

 

 

 

 

 

 

posted @   阿锋888  阅读(591)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类
点击右上角即可分享
微信分享提示