Docker + Jenkins + Git

449 阅读1分钟

jenkins安装

配置jdk

cd /etc/profile
# 末尾加入
JAVA_HOME=/home/jdk1.8.0_171
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH

# 刷新配置
source profile

安装/卸载

wget http://pkg.jenkins-ci.org/redhat-stable/jenkins-2.7.3-1.1.noarch.rpm
rpm -ivh jenkins-2.7.3-1.1.noarch.rpm  #rmp安装
rpm -e jenkins #rpm卸载
find / -iname jenkins | xargs -n 1000 rm -rf # 删除卸载残留

jenkins配置

设置root权限

vi /etc/sysconfig/jenkins
# 修改
JENKINS_USER="root"

# chown -R root:root /var/log/jenkins
# chown -R root:root /var/lib/jenkins
# chown -R root:root /var/cache/jenkins

设置jenkins JAVA_HOME

vi /etc/rc.d/init.d/jenkins
# candidates下加入JAVA_HOME/bin/java

安装Git相关插件


jenkins 启动docker+node+express项目

Dockerfile配置

# Dockerfile
FROM node:latest
# docker构建镜像时执行
LABEL MAINTAINER="hx"
RUN mkdir -p /home/app
# <源路径> 为一个 tar 压缩文件的话,压缩格式为 gzip, bzip2 以及 xz 的情况下,ADD 指令将会自动解压缩这个压缩文件到 <目标路径> 去
ADD . /home/app/
# 只复制文件
COPY . /home/app/
# 指定工作目录,之后的命令基于工作目录
WORKDIR /home/app
# docker构建镜像时执行
RUN npm config set registry "https://registry.npm.taobao.org"
RUN npm install
# 配置环境变量
ENV HOST 0.0.0.0
ENV PORT 3000
# 通知Docker容器在运行时侦听指定的网络端口
EXPOSE 3000
# docker启动容器时执行
CMD ["npm", "start", "bin/www"]

jenkins 执行shell命令配置

sudo su
docker stop fs-node | echo ""
docker rm fs-node | echo ""
docker rmi fs-node | echo ""
docker build --rm -t fs-node .
docker images
docker run -d -p 3000:3000 --name fs-node --privileged=true --restart=always fs-node