Docker 安装 Jekins

一、构建jekins

1)dockerfile

FROM frolvlad/alpine-glibc
# author
MAINTAINER Cash Zhang 
# install bash
RUN echo "https://mirror.tuna.tsinghua.edu.cn/alpine/v3.9/main/" > /etc/apk/repositories
RUN apk update \
        && apk upgrade \
        && apk add --no-cache bash \
        bash-doc \
        git \
        bash-completion \
        && rm -rf /var/cache/apk/* \
        && /bin/bash
# A streamlined jre
ADD jdk1.8.0_201.tar.gz /usr/java/jdk/
# A streamlined maven
ADD apache-maven-3.3.9.tar.gz /usr/maven/
# A streamlined maven
ADD apache-tomcat-8.5.37.tar.gz /usr/tomcat/
# timezone
ADD Shanghai /etc/localtime
# set env
ENV JENKINS_HOME /var/jenkins_home
ENV JAVA_TOOL_OPTIONS -Dfile.encoding=UTF-8
ENV MAVEN_HOME /usr/maven
ENV JAVA_HOME /usr/java/jdk
ENV PATH ${PATH}:${JAVA_HOME}/bin:${MAVEN_HOME}/bin
ENV CLASSPATH .:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
# run container with base path:/
WORKDIR /
CMD /usr/tomcat/bin/catalina.sh run

# 在jdk,maven,的文件夹里面把所有文件压缩进去 要不JAVA_HOME的路径不对
tar -zcvf jdk1.8.0_201.tar.gz *
docker build -t zhang/jekins:2.168-alpine .
docker run -it zhang/jekins:2.168-alpine

 

二、启动jekins

# 新建jekins_home,用于挂载到容器jekins中
mkdir /var/jenkins_home

# 启动docker 暂时使用root权限启动,自己看情况可以修改权限 
# docker.sock 将宿主机中docker挂载到jenkins容器中,以便在jenkins容器中执行docker命令
docker run -d \
--name jenkins \
-p 8080:8080 \
-v /var/jenkins_home/:/var/jenkins_home \
-v /path/to/local/repo:/path/to/local/repo \
-v /var/run/docker.sock:/var/run/docker.sock \
-u root \
zhang/jekins:2.168-alpine

三、后续配置信息注意

1、配置路径应为挂载的容器目录:在启动时有个 -v [宿主机目录]:[容器目录]

2、查看初始密码docker logs -f -t [容器ID]

3、maven 仓库路径

4、clean install -Dmaven.test.skip=true

5、TODO 在docker容器中使用docker命令可能出现问题,暂时还是用的jekins放在宿主机中的tomcat下

你可能感兴趣的:(Docker)