Lazy loaded image
🧑‍💻Blog 搭建记录(非本站)
字数 1318阅读时长 4 分钟
2023-12-10
2023-12-10
type
Post
status
Published
date
Dec 10, 2023
slug
blog-construction-process
summary
一个 Java 开发的开源博客的搭建记录。
tags
Java
Redis
Docker
SpringBoot
Blog
MySQL
建站
category
程序人生
icon
password
😀
Blog 项目是我参照 TyCoding 大神的 Tumo 项目写的一个个人博客。项目采用 SpringBoort + Shiro + MyBatis + Vue + Thymeleaf 技术开发,数据存储方面使用了 MySQLRedis 。项目采用 Github Webhooks 推送触发 jenkins 自动打包 Docker 镜像部署。默认主题使用了漂亮的 pinghsu,简洁大方。

项目简介

Blog 项目是我参照 TyCoding 大神的 Tumo 项目写的一个个人博客。项目采用 SpringBoort + Shiro + MyBatis + Vue + Thymeleaf 技术开发,数据存储方面使用了 MySQLRedis 。项目采用 Github Webhooks 推送触发 jenkins 自动打包 Docker 镜像部署。默认主题使用了漂亮的 pinghsu ,简洁大方。

服务器环境配置

安装JDK

网上资料很多

安装 MySQL

查看是否安装

删除历史版本

下载MySQL YUM

安装YUM

安装MySQL

一路Y到底。

启动MySQL

查看启动状态

更改密码

获取系统生成的临时密码

使用临时密码登录

修改密码

安装git

https://blog.csdn.net/zxy987872674/article/details/79220469

安装jenkins

  • 下载jenkins.war
    • 下载网址:https://www.jenkins.io/download/
  • java -jar jenkins.war --httpPort=6080
    • 端口号任意

安装nginx

网上教程很多

配置nginx

准备工作

  • 购买域名,并解析到当前服务器。
  • 申请域名对应的免费证书

修改配置

配置文件目录结构

/etc/nginx
.
| - nginx.conf
| - conf.d
| - ssl // 存放证书的文件夹
| - jenkins.kkrepo.com_bundle.crt
| - jenkins.kkrepo.com.key
| - www.conf // www.kkrepo.com 域名配置
| - jenkins.conf // jenkins.kkrepo.com 域名配置

nginx.conf配置

www.conf配置

jenkins.conf配置

nginx配置生效

安装 dockerdocker-compose

安装 docker

官网安装指导:https://docs.docker.com/engine/install/centos/

安装 docker-compose

安装 epel

安装 docker-compose

安装 Maven

官网复制安装包链接
将安装包解压,放到 /usr/local 目录下

配置环境变量

export JAVA_HOME=/usr/local/jdk1.8.0_221 export MVN_HOME=/usr/local/apache-maven-3.6.3 export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin:$MVN_HOME/bin
如果服务器速度慢的话,可以配置阿里云的 maven 仓库地址。

github 配置

SSH 配置

在服务器上生成 ssh,并将 pub key 配置到 github (Settings -> SSH and GPG keys)上。

Webhooks 配置

notion image

access tokens 配置

notion image

Jenkins 配置及持续集成

全局工具配置

notion image
notion image

Blog 项目配置

新建一个 freestyle project

General 配置

notion image

源码管理

notion image

构建触发器

notion image

构建环境

notion image

构建

notion image

构建后操作

遇到的问题及解决方案

mvn 命令未找到

问题描述

+ cd /root/.jenkins/workspace/Blog + mvn clean package /tmp/jenkins3465102471897029074.sh:行5: mvn: 未找到命令 Build step 'Execute shell' marked build as failure Finished: FAILURE
jenkins构建 过程中,需要使用 maven 给项目打包,但是打包的时候,报找不到 mvn 命令异常。

原因分析

由于 Javamaven 的环境变量都是放在 /etc/profile 中的,而 /etc/profile 只有在用户登录的时候才会被 load, jenkins 在运行命令时,使用的是 no-login 的方式,这种方式在运行命令的时候, /etc/profile 是不会被 load 进来的,jenkins 只能在当前路径下寻找可执行文件。

解决方案

jenkins 的设置中,可以设置全局变量。
Manage Jenkins -> Configure System -> 全局属性 -> Environment variables
notion image

jenkins 拉取代码速度慢

问题描述

jenkins 每次拉取代码都需要十几分钟,但是我在服务器上自己 clone 代码的时候却很快(基本可以排除网络问题)。

原因分析

  • git 版本太旧
  • git 每次拉取都是删除原来的文件,重新全量拉取

解决方案

  • 针对git版本问题,升级到最新版本
  • 针对项目重新全量拉取,在当前 job 中做如下配置
notion image
清除该勾选项,或者 在删除策略里面 忽略掉 .git 目录。
 
上一篇
区块链钱包的原理:私钥、公钥、地址、签名、助记词(转载 + 注释)
下一篇
ES(ElasticSearch)跨库复制

评论
Loading...