项目目录结构如下

对此项目,使用Jenkins构建dockers镜像

步骤如下:

1、安装Jenkins和docker,具体安装步骤,自行度娘把,在此不详述了。

2、Jenkins安装插件Gradle Plugin、Dockerer Plugin、Git Plugin

3、Jenkins全局工具配置

4、新建job,配置job

5、创建部署文件

进入部署文件目录

build.sh

docker-compose -f docker-compose.yaml up -d --build

docker-compose.yaml

 version: '3'
services:
panda-api:
image: panda-api:1011
#build: ./
restart: always
environment:
TZ: 'Asia/Shanghai'
ENV: ${ENV:-dev}
PORT: ${SERVER_PORT:-8580}
SPRING_PROFILES_ACTIVE: ${SPRING_PROFILES_ACTIVE:-dev}
ports:
- ${SERVER_PORT:-8580}:8580
volumes:
- "./docker-compose/opt/logs:/opt/logs"

Dockerfile

 FROM airdock/oracle-jdk

 ENV TZ='Asia/Shanghai'

 WORKDIR /opt/

 COPY /opt/data/jenkins/var/workspace/panda_api/build/libs/panda_api.jar /opt/panda_api.jar
COPY /opt/data/jenkins/var/workspace/panda_api/docker/entrypoint.sh / RUN chmod +x /entrypoint.sh ENTRYPOINT ["/entrypoint.sh"]

entrypoint.sh

 #!/bin/sh

 export JAVA_OPTS="-Djava.security.egd=file:/dev/./urandom"

 java  -jar /opt/panda_api.jar --server.port=${PORT:-8580}

6、接下来就可以开始构建部署,点击构建

构建成功日志如图所示

查看构建的镜像

查看运行中的容器

到此,部署成功,这是基本流程,备份镜像等功能还需待完善,时间匆忙先简要把流程写一下

Jenkins+docker自动部署的更多相关文章

  1. Gitlab+Jenkins实现自动部署

    Gitlab+Jenkins实现自动部署   系统环境: Gitlab主机 IP:192.168.1.2 Jenkins主机 IP:192.168.1.3 一.为何要做自动部署 #部署Tomcat的在 ...

  2. Linux文档整理之【Jenkins+Docker自动化部署.Net Core】

    这次整理的文档是Jenkins+Docker实现自动化部署,很早之前就写的,今天有时间就搬到博客园做个记录. Jenkins是基于Java开发的一种持续集成工具,主要用于持续.自动的构建/测试软件等相 ...

  3. springboot+Jenkins+docker-compose自动部署项目实践

    DevOps思想 一个开发.测试.运维的整个过程的思想. plan:需求.计划 code:编码 build:构建 test: 测试 release:发布版本 deploy:部署 operate:项目运 ...

  4. Gogs+Jenkins+Docker 自动化部署.NetCore

    环境说明 腾讯云轻量服务器, 配置 1c 2g 6mb ,系统是 ubuntu 20.14,Docker 和 Jenkins 都在这台服务器上面, 群晖218+一台,Gogs 在这台服务器上. Doc ...

  5. 使用jenkins 插件自动部署项目至tomcat

    前面使用maven.ant编译项目就不说,只说一下使用jenkins的插件自动部署项目 1.首先jenkins安装插件Deploy to container Plugin ,下载地址为:https:/ ...

  6. Jenkins之自动部署、代码安全扫描、自动化接口测试

    搭建Jenkins wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.reporpm --i ...

  7. Jenkins代码自动部署相关文档

    环境 centos 7.0+ Java JDK 1.8+ jenkins 2.220 maven 3.0+ git 1.8+ 注意事项 一. linux 安装 JDK (jdk-8u201-linux ...

  8. Gitlab-runner+Docker自动部署SpringBoot项目

    本文基于Gitlab CI/CD及Docker快速实现项目的自动部署. 注意:本文较长,浏览需要12分钟左右. 1.环境要求 以下服务器的操作系统均为Centos7 服务器A:Gitlab 服务器B: ...

  9. gitlab+jenkins+docker自动构建

    docker容器部署gitlab: sudo docker run --detach \ --hostname git.gitlab.com \ --net=host \ --publish 9443 ...

随机推荐

  1. intellij idea 导入mysql

    我们先创建一个新的工程 下载包 下载完后测试一下连接 可以看到连接成功! 通过可视化工具查看本地的mysql的1234数据里面的数据

  2. Angular Beijing 发布

    为了帮助 Angular 在国内的推广,申请了一个新的域名 www.ngbeijing.cn,  我将 Angular 相关的优秀文章集中在这个站点,欢迎大家访问. 刚刚转载了几篇优秀的文章. Ang ...

  3. 用kickstart创建逻辑卷管理LVM分区

    创建两个物理分区分别给Boot和Swap分区,剩余的空间作LVM. Partition    Size    Name------------------------------/boot       ...

  4. Mysql将查询结果合并为一列

    利用函数:group_concat(),实现一个ID对应多个名称时,原本为多行数据,把名称合并成一行. 完整的语法如下: group_concat([DISTINCT] 要连接的字段 [Order B ...

  5. 关于java使用POI导出ppt ,其中表格setText 失败问题

    1.导出ppt 必要的包 使用maven <dependency> <groupId>org.apache.poi</groupId> <artifactId ...

  6. 将String类型的json字符串转换成java对象

    1,import com.fasterxml.jackson.databind.ObjectMapper; ObjectMapper mapper = new ObjectMapper(); Mycl ...

  7. jedisCluster 报错: redis.clients.jedis.exceptions.JedisClusterException: No way to dispatch this command to Redis Cluster because keys have different slots.

    根本原因:jedisCluster不支持mget/mset等跨槽位的操作. 版本:2.9.0 解决办法,推荐更改redis的驱动修改为: lettuce lettuce 项目地址:https://gi ...

  8. ----Androd 系统开机显示白条提示 “there is internal problem with your device, Contact your manufacture ... ”

    ref: https://www.theandroidsoul.com/how-to-fix-theres-an-internal-problem-with-your-device-error-on- ...

  9. springboot + schedule

    参考文章:https://blog.csdn.net/sinianliushui/article/details/78841713 参考文章: https://blog.csdn.net/hao703 ...

  10. 接口--Comparable接口【哈夫曼树】

    我们在字符串中见到过CompareTo方法,知道这个方法是用于比较字符串顺序的,根据字典顺序进行排序.Java中很多类也都有CompareTo方法,甚至于排序算法的底层组成也是依赖于比较的,而这个比较 ...