gogs+jenkins自动化部署

2024-02-02 04:30
文章标签 部署 自动化 gogs jenkins

本文主要是介绍gogs+jenkins自动化部署,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

环境centos7版本虚拟机

docker安装

1.安装环境

1. yum install -y yum-utils device-mapper-persistent-data lvm2 
yum-utils //工具包集合 简化安装过程配置过程
device-mapper-persistent lvm2 docker数据存储驱动

2.设置国内阿里云安装源

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3.yum 检测最快数据源

yum makecache fast

4.docker 安装

yum install -y docker-ce //安装docker   -ce是开源社区版本

5.启动docker 服务

service docker start

6.查看docker版本

docker version

//docker 版本  docker属于cs架构 一个客户端 一个服务端 Client客户端  Server 服务端
Client: Docker Engine - CommunityVersion:           20.10.14API version:       1.41Go version:        go1.16.15Git commit:        a224086Built:             Thu Mar 24 01:49:57 2022OS/Arch:           linux/amd64Context:           defaultExperimental:      trueServer: Docker Engine - CommunityEngine:Version:          20.10.14API version:      1.41 (minimum version 1.12)Go version:       go1.16.15Git commit:       87a90dcBuilt:            Thu Mar 24 01:48:24 2022OS/Arch:          linux/amd64Experimental:     falsecontainerd:Version:          1.5.11GitCommit:        3df54a852345ae127d1fa3092b95168e4a88e2f8runc:Version:          1.0.3GitCommit:        v1.0.3-0-gf46b6baVersion:          0.19.0GitCommit:        de40ad0docker-init:

7.设置腾讯云镜像加速

vim /lib/systemd/system/docker.service 
修改:ExecStart=/usr/bin/dockerd -H fd:// --registry-mirror=https://mirror.ccs.tencentyun.com 
然后重新启动docker  
systemctl daemon-reload
service docker restart
[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd -H fd:// --registry-mirror=https://mirror.ccs.tencentyun.com   # 改为这个值
ExecReload=/bin/kill -s HUP $MAINPID
TimeoutSec=0
RestartSec=2
Restart=always
docker -info 查看镜像配置成功 
Registry Mirrors:https://mirror.ccs.tencentyun.com/

docker安装代码仓库gogs

Pull image from Docker Hub.

docker pull gogs/gogs

Create local directory for volume.

mkdir -p /var/gogs

Use docker run for the first time.

docker run --name=gogs -p 10022:22 -p 8081:3000 -v /var/gogs:/data gogs/gogs

如果control + c结束了需要重新启动docker.

docker start gogs

初始化页面

配置数据库,我用的是mysql5.7.

安装jenkins

这里不用docker安装,docker安装后期操作权限问题。

下载jenkins最新war包

官网 https://www.jenkins.io/zh/download/ 下载地址 http://mirrors.jenkins.io/war-stable/2.332.2/jenkins.war
选择.war的下载

启动jenkins

java -jar jenkins.war --httpPort=8080
后台启动命令:nohup java -jar jenkins.war --httpPort=8080&

启动注意日志输出密码

默认初始化目录 /root/.jenkins
查看初始登录秘钥:cat /root/.jenkins/secrets/initialAdminPassword

修改镜像源为清华源

hudson.model.UpdateCenter.xml

<url>https://updates.jenkins.io/update-center.json</url>
改为:https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

浏览器进入jenkins ,


输入钥匙安装默认插件

选择左侧推荐插件安装,需要等一段时间

服务器准备环境

准备ava8、node 14版、maven环境。装完之后jenkins需要重启一下
maven配置阿里云镜像

<mirror><id>aliyunmaven</id><mirrorOf>*</mirrorOf><name>阿里云公共镜像源</name><url>https://maven.aliyun.com/repository/public</url>
</mirror>

npm 安装cnpm

npm install -g cnpm --registry=https://registry.npm.taobao.org

安装完插件继续jenkins

新建一个job

选择freeStyle…

配置选项

git地址url:

配置git账号密码


配置完保存,启动一下看看代码拉下来了没有

拉下来后打包,选择构Execute shell 写两个命令



测试一下,打包失败了,重启jenkins打包成功!

可以自己写脚本放到nginx里面

vue_path="/usr/local/nginx"
#判断文件存在,判断是否为文件夹等
if [[ ! -d "$vue_path" ]];
thenecho "文件夹不存在"
elseecho "删除原文件dist文件,部署新文件"rm -rf $vue_path/dist
fi
mv dist $vue_path/

配置jenkins的执行脚本

前端的自动部署实现了!

git代码提交触发自动化部署

安装触发插件webhook,安装完重启


配置webhook


这里填一个tooken,

git里面创建webhooks


你的ip和自己设置的token

配置完成后可以在线测试

这篇关于gogs+jenkins自动化部署的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/669472

相关文章

使用Python自动化生成PPT并结合LLM生成内容的代码解析

《使用Python自动化生成PPT并结合LLM生成内容的代码解析》PowerPoint是常用的文档工具,但手动设计和排版耗时耗力,本文将展示如何通过Python自动化提取PPT样式并生成新PPT,同时... 目录核心代码解析1. 提取 PPT 样式到 jsON关键步骤:代码片段:2. 应用 JSON 样式到

ubuntu如何部署Dify以及安装Docker? Dify安装部署指南

《ubuntu如何部署Dify以及安装Docker?Dify安装部署指南》Dify是一个开源的大模型应用开发平台,允许用户快速构建和部署基于大语言模型的应用,ubuntu如何部署Dify呢?详细请... Dify是个不错的开源LLM应用开发平台,提供从 Agent 构建到 AI workflow 编排、RA

ubuntu16.04如何部署dify? 在Linux上安装部署Dify的技巧

《ubuntu16.04如何部署dify?在Linux上安装部署Dify的技巧》随着云计算和容器技术的快速发展,Docker已经成为现代软件开发和部署的重要工具之一,Dify作为一款优秀的云原生应用... Dify 是一个基于 docker 的工作流管理工具,旨在简化机器学习和数据科学领域的多步骤工作流。它

Nginx部署React项目时重定向循环问题的解决方案

《Nginx部署React项目时重定向循环问题的解决方案》Nginx在处理React项目请求时出现重定向循环,通常是由于`try_files`配置错误或`root`路径配置不当导致的,本文给大家详细介... 目录问题原因1. try_files 配置错误2. root 路径错误解决方法1. 检查 try_f

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

SpringBoot配置Ollama实现本地部署DeepSeek

《SpringBoot配置Ollama实现本地部署DeepSeek》本文主要介绍了在本地环境中使用Ollama配置DeepSeek模型,并在IntelliJIDEA中创建一个Sprin... 目录前言详细步骤一、本地配置DeepSeek二、SpringBoot项目调用本地DeepSeek前言随着人工智能技

Python实现自动化接收与处理手机验证码

《Python实现自动化接收与处理手机验证码》在移动互联网时代,短信验证码已成为身份验证、账号注册等环节的重要安全手段,本文将介绍如何利用Python实现验证码的自动接收,识别与转发,需要的可以参考下... 目录引言一、准备工作1.1 硬件与软件需求1.2 环境配置二、核心功能实现2.1 短信监听与获取2.

Python实现Microsoft Office自动化的几种方式及对比详解

《Python实现MicrosoftOffice自动化的几种方式及对比详解》办公自动化是指利用现代化设备和技术,代替办公人员的部分手动或重复性业务活动,优质而高效地处理办公事务,实现对信息的高效利用... 目录一、基于COM接口的自动化(pywin32)二、独立文件操作库1. Word处理(python-d

通过Docker Compose部署MySQL的详细教程

《通过DockerCompose部署MySQL的详细教程》DockerCompose作为Docker官方的容器编排工具,为MySQL数据库部署带来了显著优势,下面小编就来为大家详细介绍一... 目录一、docker Compose 部署 mysql 的优势二、环境准备与基础配置2.1 项目目录结构2.2 基