springboot打包docker镜像部署
springboot打包docker镜像部署
环境准备
机器 vultr一台,centos7
资源下载
- jdk8
- maven
- git yum install git
- docker yum install docker-io
环境搭建
jdk,maven
1.解压资源
tar -zxvf jdk8.tar.gz
tar -zxvf apache-maven-3.3.9-bin.tar.gz2.配置环境变量
vim /etc/profile
export JAVA_HOME=/root/jdk8
export MAVEN_HOME=/root/apache-maven-3.3.9
export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
3.资源生效
source /etc/profile
项目准备(使用现有项目)
pan-search-springboot pom.xml新增docker配置
<plugin><groupId>com.spotify</groupId><artifactId>docker-maven-plugin</artifactId><version>0.4.3</version><configuration><imageName>${docker.image.prefix}/${project.artifactId}</imageName><dockerDirectory>src/main/docker</dockerDirectory><resources><resource><targetPath>/</targetPath><directory>${project.build.directory}</directory><include>${project.build.finalName}.jar</include></resource></resources>
</plugin>
配置解释
- imageName镜像名称
- dockerDirectory Dockerfile位置
- resources 指那些需要和 Dockerfile 放在一起,在构建镜像时使用的文件,一般应用 jar 包需要纳入。本例,只需一个 jar 文件 Dockerfile定义 /src/main/docker/Dockerfile
FROM frolvlad/alpine-oraclejdk8:slim
VOLUME /tmp
ADD docker-spring-boot-1.0.0.jar app.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
配置解释
- VOLUME 指定了临时文件目录为/tmp。其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp。改步骤是可选的,如果涉及到文件系统的应用就很有必要了。/tmp目录用来持久化到 Docker 数据文件夹,因为 Spring Boot 使用的内嵌 Tomcat 容器默认使用/tmp作为工作目录
- 项目的 jar 文件作为 "app.jar" 添加到容器的
- ENTRYPOINT 执行项目 app.jar。为了缩短 Tomcat 启动时间,添加一个系统属性指向 "/dev/urandom" 作为 Entropy Source
构建dockerImage
项目根路径下执行
mvn package docker:build
运行docker
docker run -p 8080:8080 -t kite/pan-search-springboot
打包上传
账号注册
register
登陆
docker login
上传
docker push kitesweet/pan-search-springboot
拉取镜像
docker pull kitesweet/pan-search-springboot
常用docker命令
查看
docker ps
docker ps -a为查看所有的容器,包括已经停止的
删除所有容器
docker rm $(docker ps -a -q)
删除单个容器
docker rm <容器名orID>
停止、启动、杀死一个容器
docker stop <容器名orID>
docker start <容器名orID>
docker kill <容器名orID>
查看所有镜像
docker images
查看容器日志
docker logs -f <容器名orID>
参考
- 常用docker命令,及一些坑
- 用 Docker 构建、运行、发布一个 Spring Boot 应用
转载于:https://my.oschina.net/u/2529405/blog/840132
springboot打包docker镜像部署相关推荐
- SpringBoot打包docker镜像并桥接mysql(windows版)
文章目录 docker建立桥bridge SpringBoot项目配置文件调整 idea增加插件 增加Dockerfile文件 docker上管理端口的暴露 idea连接docker 构建 Docke ...
- docker入门,镜像,容器,数据卷,dockerfile,docker网络,springboot微服务打包docker镜像[狂神yyds]
docker学习大纲 docker概述 docker安装 docker命令 镜像命令 容器命令 操作命令 - docker镜像 容器数据卷 dockerfile docker网络原理 IDEA整合do ...
- 打包docker镜像,推送远程服务器,部署到k8s步骤
打包docker镜像 前提条件 1.docker服务器已开启远程访问,参考<远程docker服务器携带证书连接>. 2.服务器上已经搭建好k8s集群,本文是k8s单点集群用于测试. 在之前 ...
- 打包docker镜像推送到远程服务器并部署到k8s
前提条件: 1.docker服务器已开启远程访问,参考<远程docker服务器携带证书连接>. 2.服务器上已经搭建好k8s集群,本文是k8s单点集群用于测试. 在之前的文章中我们已经通过 ...
- BI系统打包Docker镜像及部署的技术难度和实现
BI系统打包Docker镜像及部署的技术难度和实现 随着容器化技术盛行,Docker在前端领域也有着越来越广泛的应用:传统的前端部署方式需要我们将项目打包生成一系列的静态文件,然后上传到服务器,配置n ...
- Springboot项目使用Idea直接生成docker镜像部署到Centos7.6
废话不多说,直接开干: 1.开放docker仓库访问地址: #输入此命令设置docker.service的仓库访问端口,ExecStart项添加:-H tcp://0.0.0.0:2375vim /u ...
- Docker基础篇 - (六)Docker 网络Spring Boot微服务打包Docker镜像
⑦ Docker 网络 7.1 理解Docker0 清空下前面的docker 镜像.容器 # 删除全部容器 [root@cVzhanshi tomcat-diy]# docker rm -f $(do ...
- Spring Boot项目打包Docker镜像
Spring Boot项目打包Docker镜像 1.编写 Dockerfile 文件 2.加入 spring boot 根路径, 进行 mvn package 打包 3.打包上传项目并解压 4.进入 ...
- IDEA 打包docker镜像(以打包Jdk8为例)
目录 1.Idea项目中准备jdk8打包docker镜像的相关文件 2.编写Dockeffile文件 3.编辑Configurations 添加Dockerfile 4.创建镜像 Idea中docke ...
最新文章
- WIN下Nginx缓存加速配置方法
- MAT之GA:利用GA对一元函数进行优化过程,求x∈(0,10)中y的最大值
- 搞懂深浅拷贝JavaScript内存之栈和堆
- 6-Qt6对象树及内存管理
- 各互联网公司面试题整理
- 【蓝桥杯】基础练习 十六进制转八进制(Java实现)
- 【阿里妈妈营销科学系列】第五篇:多渠道组合路径效率评价
- docker 修改阿里镜像源_使用阿里云容器镜像服务托管私有Docker镜像
- 模块(module)
- 【java实现点卡生成】
- linux交叉编译jpeg,libjpeg的交叉编译以及jpeg图片的缩放(缩略图)
- C语言程序设计(第三版)何钦铭著 习题2-1
- mysql sql 字符串拼接_深入讲解SQL中的字符串拼接
- android通电自动开机,【图】改造导航仪,实现通电自动开机!
- [译]ng指令中的compile与link函数解析 转
- 不知道视频怎样提取音频?这里有详细教程分享
- 计算机领域会议期刊,数据挖掘等计算机领域顶级会议期刊~(转)
- Chrome with proxy
- An infrared and visible image fusion algorithm based on ResNet‑152
- 阿德莱德大学语言班成绩为C,留学攻略—阿德莱德大学语言班
热门文章
- rosdep update 使用小鱼fishros解决ros1/ros2问题 2022
- java爬网页图片到本地
- 我叫mt4最新服务器,我叫mt4新区开服表 最新新区开服时间汇总分享[多图]
- GPT-3的50种玩法告诉你,它很酷,但是没有通过图灵测试
- Origin 2017调整画布和图表的尺寸大小
- 最强国产开源电子表格-Luckysheet,强势登顶Github trending第一名!
- 匹配的通配符很全面,但无法找到元素mvc:annotation-driven的声明
- 阿里云服务器设置swap交换分区
- 19c 单实例打补丁
- 数据无界·存储无疆:大数据时代下,闪存已经势不可挡