快速搭建服务"/>
Jenkins+docker+nginx快速搭建服务
1.下载jdk1.8
.html
2.修改配置变量
vi /etc/profile
3.配置环境变量
export JAVA_HOME=/usr/java/jdk1.8.0_181
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar‘
4.生效
source /etc/profile
5.安装maven
上传maven安装包tar -xf apache-maven-3.6.1-bin.tar.gz mkdir -p /opt/maven mv apache-maven-3.6.1 /opt/apache-maven-3.6.1
6.修改maven环境变量
vi /etc/profile需要依赖jdkexport JAVA_HOME=/usr/lib/jvm/java-11-openjdkexport MAVEN_HOME=/opt/apache-maven-3.6.1export PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bi
7.修改Maven的settings.xml
# 创建本地仓库目录mkdir /opt/repo修改权限:chmod -R 777 /opt/repovi /opt/maven/conf/settings.xml修改为本地仓库地址<localRepository>/root/repo</localRepository>更换镜像<mirror><!-- 此镜像的唯一标识,用来区分不同的mirrors元素 --><id>nexus-aliyun</id><!-- 被替代仓库的名称(对应上面查找到的默认仓库id) --><mirrorOf>central</mirrorOf><!-- 镜像名称,随意 --><name>Nexus aliyun</name><!-- 镜像URL --><url>;/url></mirror>
8.服务器上安装git
yum -y install git
# 查看git版本
git --version
9.安装docker
/?articleId=118154338
11.安装OpenJDK
yum install -y java-1.8.0-openjdk
java -version
10.安装jenkins
wget .346-1.1.noarch.rpm --no-check-certificate
11.修改jenkins端口号
进入此文件
vi /etc/sysconfig/jenkins
修改端口:
JENKINS_USER="root"
JENKINS_PORT="8888"进入
cd /usr/lib/systemd/system
vim jenkins.service
修改
Environment="JENKINS_PORT=8889"
12 修改jenkins环境变量
vim /etc/init.d/jenkinswhich java # 运行后,java位置即为下文红圈中,我们需要填写的内容修改环境 添加上一部得到到java环境路径
candidates="
/opt/jdk1.8/bin/java配置文件生效
systemctl daemon-reload设置开机启动
systemctl enable jenkins.servicesystemctl start jenkinssystemctl status jenkinssystemctl stop firewalld systemctl disabled firewalld 云服务器开启此端口访问
http://192.168.6.20:8888查看密码
cat /var/lib/jenkins/secrets/initialAdminPassword
13.进入jenkins
1.跳过安装插件
2.创建管理用户
3.Jenkins —> Manage Jenkins —> Manage Plugins,点击Advanced ,修改Update Site的URL,提交保存
复制这个到里面保存
/
4.安装汉化插件搜索:chinese
5.创建一个新用户Manage Jenkins —> Manage Users(管理用户) —> 新建用户
6.安装Credentials Binding插件
7.Manage Jenkins —> Manage Credentials
8.添加一个gitee凭证 查看图片 .png账号,密码为gitee的账号和密码 保存应用
9. Manage Jenkins —> Global Tool Configuration —-> JDK —-> 新增JDK,查看图片 .pngJenkins —> Global Tool Configuration —-> Maven —–> 新增Maven,查看图片 .pngJenkins —> Global Tool Configuration —-> Git—–> 新增Git,输入命令 在虚拟机中数据 which git 查看git安装地址复制进去查看图片 .png
10.安装Pipeline插件 Manage Jenkins —–> Manage Plugins —-> 可选插件 —> 搜索Pipeline
11.创建一个流水项目 点击配置之后选择Git 复制仓库http路径.png
12.配置字符参数.png.png
13.选项参数.png
14.写入Jenkinsfile脚本
//git凭证ID
def git_auth = "4a0eec89-3642-4a8d-866f-2dec5713d030"
//git的url地址
def git_url = ".git"
//镜像的版本号
def tag = "latest"node {stage('拉取代码') {checkout([$class: 'GitSCM', branches: [[name: "*/${branch}"]],doGenerateSubmoduleConfigurations: false,extensions: [], submoduleCfg: [],userRemoteConfigs: [[credentialsId: "${git_auth}", url: "${git_url}"]]])}stage('编译,安装公共工程') {//编译,安装公共工程sh "mvn -f iyj-common clean install"}stage('编译,构建镜像') {// 定义镜像名称(项目名称+版本号)def imageName = "${project_name}-service:${tag}"sh "echo ${imageName}"//删除相同容器sh "/opt/jenkins_shell/removeContain.sh ${project_name}"sh "/opt/jenkins_shell/removeImage.sh ${imageName}"// 添加构建镜像的操作sh 'mvn -f ${project_name} clean package dockerfile:build'//启动容器//sh "docker run -d -p ${port}:${port} --name ${project_name} ${imageName}"sh "docker run -d -e SPRING_PROFILES_ACTIVE=${spring_profiles} --name ${project_name} -p ${port}:${port} -v /data/log:/log ${imageName}"}
}
15.写入删除镜像脚本
#! /bin/sh
PROJECT_NAME=$1
#容器名称
echo "$PROJECT_NAME"
# 检查该进程是否正在运
num=`docker ps |grep -w $PROJECT_NAME|grep -v grep|wc -l`if [ $num -gt 0 ]; then##存在以前的进程,停掉
echo 'docker container ' $PROJECT_NAME ' progress is running'## 停掉该进程
docker stop $PROJECT_NAME
echo 'stop container ' $PROJECT_NAME ' success'
fi
## 检查该容器是否存在
num=`docker ps -a |grep -w $PROJECT_NAME|grep -v grep|wc -l`
if [ $num -gt 0 ]; then
##容器存在,则删掉该容器
echo 'docker container ' $PROJECT_NAME ' container is exists'
## 删掉该容器
docker rm $PROJECT_NAME
echo 'remove container ' $PROJECT_NAME ' success'
fi
16.写入删除容器脚本
#!/bin/bash
#容器名称 iyj-basic-service:lastest
image_name=$1
if [[ "$(docker images -q $image_name 2> /dev/null)" != "" ]];then##容器存在,则删掉该镜像docker rmi -f $image_nameecho 'remove image success'
fi
虚拟机mysql安装:
-bash: mysql: command not found
虚拟机redis安装:
安装nacos
见CSDN收藏
前端部署
安装nginx
.conf里面的配置.png![在这里插入图片描述](.png)代理增添:location /api/ {proxy_pass http://159.75.247.247:9002;proxy_set_header Host $http_host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_connect_timeout 30;proxy_send_timeout 60;proxy_read_timeout 60;}
开机启动
1.在服务器上安装nodejsV16.10.0
参考
2.jenkins上配置进入全局工具设置:.png
3.
.png脚本:
//git凭证ID
def git_auth = "4a0eec89-3642-4a8d-866f-2dec5713d030"//git的url地址
def git_url = ".git"node {stage('拉取代码') {checkout([$class: 'GitSCM', branches: [[name: "*/${branch}"]],doGenerateSubmoduleConfigurations: false,extensions: [], submoduleCfg: [],userRemoteConfigs: [[credentialsId: "${git_auth}", url: "${git_url}"]]])}stage('编译,打包') {//编译,安装公共工程nodejs('nodejs16'){sh '''cnpm installnpm run build:prodrm -rf /opt/data/distmv /var/lib/jenkins/workspace/iyj-ui/dist /opt/data''' }}
}
安装参考:jdk8
.html?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~activity-1-127226397-blog-125572690.pc_relevant_aa&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~activity-1-127226397-blog-125572690.pc_relevant_aa&utm_relevant_index=1
jdk11
/#4-%E6%8C%81%E7%BB%AD%E9%9B%86%E6%88%90%E7%8E%AF%E5%A2%83-jenkins%E5%AE%89%E8%A3%85
问题总结
交换空间不足
/article/7312129
升级jenkins 下载war 替换掉原来的war 查找原来的war路径 查看jenkins的状态即可下载插件基本插件harbor的登录凭证(java.io.IOException) caught when processing request to {}->unix://localhost:80: Permission deniedchmod 777 /var/run/docker.sock
忽略
下载安装jdk1.8 或手动上传
.htmlvi /etc/profile配置环境变量
export JAVA_HOME=/usr/java/jdk1.8.0_181
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar‘
生效
source /etc/profile# OpenJDK部署
yum install -y java-1.8.0-openjdk
java -version
安装jenkins+jdk8
注意:jenkins最新版本仅支持jdk11 jdk1.8需要下载
wget .346-1.1.noarch.rpm --no-check-certificaterpm -ivh jenkins-2.346-1.1.noarch.rpm
2、jenkins安装+jdk11
sudo wget -O /etc/yum.repos.d/jenkins.repo .repo
sudo rpm --import .io.keyyum install epel-release -y # 安装依赖(提供“daemonize”的存储库)
yum install java-11-openjdk-devel -y # 安装jdk
yum install jenkins -y # 安装Jenkins
任意服务器部署jar
服务器之间拷贝jar
虚拟内存不足
完整项目实践
配置完成界面
IP参数设置
执行远程脚本命令
分支参数设置
jar包存放路径
构建命令
项目结构
更多推荐
Jenkins+docker+nginx快速搭建服务
发布评论