Jenkins-Docker

DockerFile,存放在项目根路径下

FROM pig4cloud/java:8-jre

MAINTAINER xxx@qq.com

ENV TZ=Asia/Shanghai
ENV JAVA_OPTS="-Xms256m -Xmx256m -Djava.security.egd=file:/dev/./urandom"

RUN ln -sf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

RUN mkdir -p /xxx-salary

WORKDIR /xxx-salary

EXPOSE 6100

ADD ./target/xxx-salary-biz.jar ./

CMD java $JAVA_OPTS -jar xxx-salary-biz.jar

docker-compose.yml:存放在项目模块同级

# 使用说明 V3.8.0
# 1. 使用docker-compose  宿主机不需要配置host来发现
# 2. 无需修改源码,根目录  docker-compose up 即可
# 3. 静静等待服务启动

version: '3'
services:
  xxx-salary:
    build:
      context: ./xxx-salary-biz
    restart: always
    image: xxx-salary
    container_name: xxx-salary
    ports:
      - 6100:6100
    extra_hosts:
      - "xxx-mysql:127.0.0.1"
      - "xxx-redis:127.0.0.1"
      - "xxx-register:127.0.0.1"
    networks:
      - xxx-net

networks:
  xxx-net:
    external: true

说明:到时候127.0.0.1换成具体的IP,xxx换成具体的模块名

Jenkins模块配置:

rm -rf /home/maven/repo/com/xxx
clean
package -Dmaven.test.skip=true 

 

说明:Remote directory:在root目录下,因为System configuration里配置的SSH服务器是root用户:

xxx-salary.sh脚本:

cd /root/jenkins/xxx-salary
docker-compose down
docker system prune -a -f
docker load < /usr/libexec/docker/pig4cloud.tar
docker-compose build
docker-compose up -d

  

原文地址:https://www.cnblogs.com/wangfajun/p/13913518.html