docker安装jenkins安装流程(一)

1.下载安装jdk

官网:https://jdk.java.net/
https://www.oracle.com/java/technologies/downloads/
docker安装jenkins安装流程(一)_第1张图片
上传到linux服务器

cd /usr
mkdir jdk
tar -zxvf 所要解压的文件名
编辑profile文件:vim /etc/profile
把光标移到最后一行,键盘按 i,进入编辑模式,然后插入以下内容:(注意自己所建java的路径、jdk的名称)
JAVA_HOME=/usr/jdk/jdk1.8.0_361
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH
后按ESC退出编辑模式,‘shift + :’,输入wq,回车,完成保存并退出

让编辑的文件生效执行:source /etc/profile

最后验证JDK安装是否成功:java -version

docker安装jenkins安装流程(一)_第2张图片

2.下载安装maven(可以挂载卷也可以安装到挂载jenkins目录下面)

下载官网:https://maven.apache.org/
下载地址https://maven.apache.org/download.cgi
docker安装jenkins安装流程(一)_第3张图片
上传到linux服务器

cd /usr
mkdir maven
tar -zxvf 文件
配置maven仓库,设置阿里镜像仓库,一定要配置一下,国内的下载jar快些,首先进入cd apache-maven-3.9.1目录,创建仓库存储目录,mkdir xql。如下图:

cd /apache-maven-3.9.1/conf
vim setting

配置setting






/var/jenkins_home/maven/apache-maven-3.9.1/xql
        true
        false
  
  
  
  
  

  

 
  

  


  

                
        alimaven
        central
        aliyun maven
        http://maven.aliyun.com/nexus/content/repositories/central/
        

        
        aliyunmaven
        *
        aliyun
        https://maven.aliyun.com/repository/public
        

        
    nexus-aliyun
    central
    Nexus aliyun
    http://maven.aliyun.com/nexus/content/groups/public
        
  

 

配置环境变量
编辑profile文件:vim /etc/profile
把光标移到最后一行,键盘按 i,进入编辑模式,然后插入以下内容:(注意自己所建maven的路径、名称)
export MAVEN_HOME=/usr/maven/apache-maven-3.9.1
export PATH=$PATH:$MAVEN_HOME/bin

让编辑的文件生效执行:source /etc/profile
mvn -v查看

docker安装jenkins安装流程(一)_第4张图片

3.docker安装jenkins

下载地址参考手册:https://www.jenkins.io/download/

docker pull jenkins/jenkins

docker run --name myjenkins \
	-d \ 
	--restart=always \
	-p 8001:8080 \
	-p 50000:50000 \
	-v /home/wyt/jenkins_home:/var/jenkins_home \
	-v /usr/maven/apache-maven-3.9.1:/usr/local/maven \
	-v /var/run/docker.sock:/var/run/docker.sock \
	--env JAVA_OPTS="-Xms256m -Xmx512m -Xss1024K -XX:PermSize=128m -XX:MaxPermSize=256m" jenkins/jenkins



docker run \
-u root \
-d \
--restart=always \
-p 8001:8080 \
-p 50000:50000 \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /usr/maven/apache-maven-3.9.1:/usr/local/maven \
-v /var/jenkins_home:/var/jenkins_home \
jenkinsci/blueocean

访问jenkins:http://xxxxxx:8001/

查看密码:cat /var/lib/jenkins/secrets/initialAdminPassword
docker安装jenkins安装流程(一)_第5张图片
docker安装jenkins安装流程(一)_第6张图片

docker安装jenkins安装流程(一)_第7张图片
docker安装jenkins安装流程(一)_第8张图片
docker安装jenkins安装流程(一)_第9张图片

  • 安装Maven Integration
  • 安装Publish Over SSH(如果不需要远程推送,不用安装)
  • 如果使用Gitee 码云,安装插件Gitee(Git自带不用安装)
  • 配置maven 系统盘挂载maven路径

docker安装jenkins安装流程(一)_第10张图片

docker安装jenkins安装流程(一)_第11张图片
新建工程配置git仓库以及访问身份凭证
docker安装jenkins安装流程(一)_第12张图片
指定分支

docker安装jenkins安装流程(一)_第13张图片

clean install -Dmaven.test.skip=true

docker安装jenkins安装流程(一)_第14张图片
测试是否正常打包 点击构建 观察控制台
docker安装jenkins安装流程(一)_第15张图片

cd /var/jenkins_home/workspace/
ls -l

docker安装jenkins安装流程(一)_第16张图片
运行项目
因为我们项目和jenkins在同一台服务器,所以我们用shell脚本运行项目,原理既是通过dockerfile 打包镜像,然后docker运行即可。

Dockerfile
在springboot项目resources新建一个名为Dockerfile的文件,注意没有后缀名,其内容如下:(大致就是使用jdk8,把jar包添加到docker然后运行prd配置文件)

# 基础镜像使用java

FROM openjdk:8

# 作者

MAINTAINER xql

# VOLUME 指定临时文件目录为/tmp,在主机/var/lib/docker目录下创建了一个临时文件并链接到容器的/tmp

VOLUME /tmp

# 将jar包添加到容器中并更名为app.jar
ADD target/goods.jar app.jar

# 运行jar包

#暴露6060端口作为微服务

EXPOSE 8089

ENTRYPOINT ["java","-DBash.security.egd=file:/dev/./urandom","-jar","/app.jar","--spring.profiles.active=prd"]

都可以

ENTRYPOINT ["java","-DBash.security.egd=file:/dev/./urandom","-jar","/app.jar","--spring.profiles.active=prd"]

修改jenkins任务配置
docker安装jenkins安装流程(一)_第17张图片

-t:指定新镜像名
.:表示Dockfile在当前路径
值得注意的是第一步 因为我的DockerfIle是在resources下面 所以我copy到当前主目录了
cp /var/jenkins_home/workspace/goods/src/main/resources/Dockerfile /var/jenkins_home/workspace/goods/Dockerfile
cd /var/jenkins_home/workspace/goods/
docker stop goods || true
docker rm goods || true
docker rmi goods || true
docker build -t goods .
docker run -d -p 8089:8089 --name goods goods:latest

点击立即构建 观察控制台信息
docker安装jenkins安装流程(一)_第18张图片

你可能感兴趣的:(jenkins,docker,java)