Jenkins 2019 in Docker(2)Set Up Some Tools and Projects
Set Up User
Go to ‘Manage Jenkins’ —> ‘Configure Global Security’ —> enable sign up and give the user permissions one by one
Set Up Tools
Go to ‘Manage Jenkins’ —> ‘Global Tool Configuration’
I found I may need JDK 10 for Jenkins to support my projects.
Website to download JDK10
https://jdk.java.net/java-se-ri/10
wget https://download.java.net/openjdk/jdk10/ri/openjdk-10+44_linux-x64_bin_ri.tar.gz -P install/
I follow this step install openJDK 10 on Docker
#install the software
RUN yum -y update
RUN yum install -y freetype
RUN mkdir -p /tool/
#install /tool/jdk-10
ADD install/openjdk-10+44_linux-x64_bin_ri.tar.gz /tool/
WORKDIR /tool/
ENV JAVA_HOME /tool/jdk-10
ENV PATH="${JAVA_HOME}/bin:${PATH}"
But it seems not working for jenkins.
I directly run this command with my oracle jdk, it works fine.
> java --add-modules java.xml.bind -jar install/jenkins.war --enable-future-java
We can always download the Oracle JDK here
https://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase10-4425482.html
Here is the start.sh
#!/bin/sh -ex
cd /tool/
java -Duser.home=/var/jenkins_home --add-modules java.xml.bind -jar jenkins.war \
--enable-future-java
Here is the Dockerfile
#Set Up Jenkins CI
#Prepre the OS
FROM centos:7
MAINTAINER Yiyi Kang <yiyikangrachel@gmail.com>
#install the software
RUN yum -y update
RUN yum install -y freetype
RUN yum install -y git
RUN yum install -y wget make
RUN mkdir -p /tool/
#install /tool/jdk-10
ADD install/jdk-10.0.2_linux-x64_bin.tar.gz /tool/
WORKDIR /tool/
ENV JAVA_HOME /tool/jdk-10.0.2
ENV PATH="${JAVA_HOME}/bin:${PATH}"
#install jenkins
ADD install/jenkins.war /tool/
#start the application
EXPOSE 8080 50000
RUN mkdir -p /app/
ADD start.sh /app/
WORKDIR /app/
CMD [ "./start.sh" ]
After that, I directly configure
JDK Name: jdk10.0.2
JAVA_HOME: /tool/jdk-10.0.2
Git Name: Git1.8
Gradle Name: Gradle5.1.1 install automatically
Ant Name: Ant1.10.5 install automatically
Maven Name: MAVEN3.6.0 install automatically
Set Up TimeZone for Jenkins
Lis the timezone in America
> sudo timedatectl list-timezones | grep America
Austin is the same as Chicago
> sudo timedatectl set-timezone America/Chicago
> date
Fri Jan 25 09:16:08 CST 2019
Add this to start.sh in Jenkins
#!/bin/sh -ex
cd /tool/
java -Duser.home=/var/jenkins_home \
-Duser.timezone=America/Chicago \
--add-modules java.xml.bind \
-jar jenkins.war \
--enable-future-java
If any permission issue happens
> sudo chmod -R 777 ./jenkins_home
Check every 5 minutes
H/5 * * * *
References:
https://www.jianshu.com/p/0391e225e4a6
https://www.server-world.info/en/note?os=CentOS_7&p=jdk11&f=2
https://jenkins.io/blog/2018/06/17/running-jenkins-with-java10-11/
https://tecadmin.net/install-java-non-lts-on-centos/
https://www.mysterydata.com/how-to-install-java-10-on-centos-rhel-7-6-based-system/
分享到:
相关推荐
jenkins教程+docker容器实际项目实战教程.pdf jenkins教程+docker容器实际项目实战教程.pdf
使用 Docker 安装 Jenkins,可以使用以下命令:docker run --name jenkins -u root --rm -d -p 8080:8080 -p 50000:50000 -v /var/jenkins_home:/var/jenkins_home -v /var/run/docker.sock:/var/run/docker.sock ...
基于Jenkins+Gitlab+Docker实现SpringBoot项目自动部署 本文主要介绍了基于Jenkins、Gitlab和Docker实现SpringBoot项目自动部署的方法。下面将从Jenkins的安装、配置到自动化构建和部署的整个过程进行详细说明。 ...
1)根据官方链接操作即可: ... -v /var/run/docker.sock:/var/run/docker.sock \ jenkinsci/blueocean 2)容器部署完成之后,登录页面http://虚拟机的IP:18080 进入容器查看密码: 输入密码开始按照提
Gitllab+Jenkins+Docker+Harbor 自动化部署流程 一、 版本控制系统 Gitllab Gitllab 是一个基于 web 的 Git 仓库管理系统,提供了一个强大且灵活的平台来管理 Git 项目。 Gitllab 允许用户创建、管理和共享 Git ...
项目基本结构是SpringBoot,集成了docker-maven插件实现build完的镜像上传到私服,然后用 Jenkins构建实现docker集群一键自动化部署
Jenkins Docker and DevOps The Innovation Catalysts,Jenkins Docker and DevOps The Innovation Catalysts
触发jenkins自动pull代码,通过maven编译、打包,然后通过执行shell脚本使docker构建镜像并push到私服(或者阿里云)仓库,此操作完成后jenkins服务器上再执行SSH命令登录到部署服务器,docker从仓库(私服)拉取...
jenkins-pipeline-docker, 带有Jenkins管道插件和 Docker的容器构建环境 采用Jenkins管道插件和 Docker的容器环境。这里代码与这里博客帖子相关:...
带有Docker-in-Docker的Jenkins带有Docker-in-Docker的Jenkins容器映像是同时包含Jenkins和Docker-in-Docker的标准化连续集成环境。 这意味着它具有易于运输的Docker容器的所有优点,此外还具有从内部构建Docker容器...
### Jenkins 2: Up and Running - 关键知识点详解 #### 一、Jenkins 2 的特点与优势 《Jenkins 2: Up and Running》这本书深入介绍了如何利用Jenkins 2构建灵活、可控且易于维护的持续交付管道。相较于之前的版本...
jenkins部署包 docker image
Jenkins mavn git docker-compose swarm 构建持续集成及一键式部署
Jenkins 2: Up and Running Evolve Your Deployment Pipeline for Next Generation Automation Design, implement, and execute continuous delivery pipelines with a level of flexibility, control, and ease of...
Docker中的Jenkins附加了本地Docker注册表目的如果您在PC上使用Jenkins,您很可能会注意到启动后运行第一次Jenkins作业所花费的时间。 在此期间,Jenkins中的Docker提取在Jenkins文件中指定的映像。 每次Docker Dind...
详细讲解Jenkins 结合Docker的 持续集成方案,包含大量的实践案例,适合项目发布人员和配管人员学习。
jenkins -p 8082:8080 --restart always -v /srv/moocoder/jenkins:/var/jenkins_home:Z -v /usr/bin/docker:/usr/bin/docker:Z -v /var/run/docker.sock:/var/run/docker.sock:Z -u root jenkins/jenkins:2.124 ...
docker pull jenkins/jenkins 2.查看镜像文件 docker images 3.创建Jenkins挂载目录并授权权限 创建:mkdir -p /usr/local/jenkins/data 授权:chmod -R 777 /usr/local/jenkins/data 4.启动jenkins容器 ...
Docker 安装 Jenkins 部署并自动化打包部署 Java 服务 一、 Docker 安装 Jenkins 部署 Docker 是一个开源的容器化平台,可以轻松地将应用程序打包、部署和管理。Jenkins 是一个流行的自动化构建工具,可以自动化...
##背景:jenkins部署在容器中,无法利用docker执行操作,通过ssh将jar包和当前路径下的dockerfile推送到指定服务器目录上,使用脚本进行构