博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SpringBoot 部署 docker 打包镜像
阅读量:5324 次
发布时间:2019-06-14

本文共 2871 字,大约阅读时间需要 9 分钟。

SpringBoot 部署 docker 打包镜像

环境:

  1、代码编写工具:IDEA

  2、打包:maven

  3、docker

  4、linux

  7、JDK1.8

  8、Xshell

  9、Xftp

第一步:使用idea创建简单的springboot项目

  引用一篇别人文章:

第二步:设置项目生成jar包(两种方式)

  1、修改pom文件

4.0.0
com.example
ordinary
0.0.1-SNAPSHOT
jar
ordinary
Demo project for Spring Boot
org.springframework.boot
spring-boot-starter-parent
2.0.6.RELEASE
UTF-8
UTF-8
1.8
org.springframework.boot
spring-boot-starter
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-test
test
org.springframework.boot
spring-boot-maven-plugin

  2、或者在生成项目的时候 可以选择jar和war

第三步:使用maven 生成包 (使用idea不用命令 直接界面操作就可以(如果Maven设置没问题 直接就可以生成 包 log会提示生成后的文件目录))

 

第四步:docker概念

  1、docker:最早是dotCloud公司出品的一套容器管理工具,但后来Docker慢慢火起来了,连公司名字都从dotCloud改成Docker。

  2、dockerfile:它是Docker镜像的描述文件,可以理解成火箭发射的A、B、C、D……的步骤。

  3、docker镜像:通过Dockerfile做出来的,包含操作系统基础文件和软件运行环境,它使用分层的存储方式。

  4、docker容器:是运行起来的镜像,简单理解,Docker镜像相当于程序,容器相当于进程。

第四步:dockerfile指令

  Dockerfile由多条指令组成,每条指令在编译镜像时执行相应的程序完成某些功能,由指令+参数组成,以逗号分隔,#作为注释起始符,虽说指令不区分大小写,但是一般指令使用大些,参数使用小写

第五步:dockerfile文件例子(我只是简单将springboot项目生成docker镜像没有什么多余配置)

TODO:有一点需要注意的地方就是dockerfile文件没有任何后缀

# Pull base image  FROM  java:8    MAINTAINER yihj "yihj@yinghaikeji.com"  VOLUME /tmp  # 添加 ADD ordinary.jar app.jarRUN bash -c 'touch /app.jar'  # Define default command. ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]#设置时区RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone

第六步:将dockerfile文件和生成好的jar 使用ftp工具上传到linux服务器 随便找个文件夹 放进去 jar和dockerfile在同级目录下

第七步:使用 docker build -t ordinary:v1.0 .

  TODO:

    1、 最后面的这个 . 代表在当前目录下面寻找 dockerfile 文件

    2、ordinary 镜像名字

    3、v1.0版本

第八步:查看镜像及启动

  1、使用docker images 来查看生成的镜像

  2、使用docker create 来创建容器 docker run 来创建并且运行容器

  3、也可以使用docker logs 容器名 --tail 100 -f 来查看项目启动日志 看项目是否启动

  3、如果上面步骤一切正常 可以直接调用IP加端口来访问项目

 

转载于:https://www.cnblogs.com/yi1036943655/p/9879464.html

你可能感兴趣的文章
微软职位内部推荐-SOFTWARE ENGINEER II
查看>>
centos系统python2.7更新到3.5
查看>>
C#类与结构体究竟谁快——各种函数调用模式速度评测
查看>>
我到底要选择一种什么样的生活方式,度过这一辈子呢:人生自由与职业发展方向(下)...
查看>>
poj 题目分类
查看>>
windows 安装yaml支持和pytest支持等
查看>>
读书笔记:季羡林关于如何做研究学问的心得
查看>>
面向对象的优点
查看>>
套接口和I/O通信
查看>>
阿里巴巴面试之利用两个int值实现读写锁
查看>>
浅谈性能测试
查看>>
Winform 菜单和工具栏控件
查看>>
CDH版本大数据集群下搭建的Hue详细启动步骤(图文详解)
查看>>
巧用Win+R
查看>>
浅析原生js模仿addclass和removeclass
查看>>
Python中的greenlet包实现并发编程的入门教程
查看>>
java中遍历属性字段及值(常见方法)
查看>>
深入理解jQuery框架-框架结构
查看>>
YUI3自动加载树实现
查看>>
python知识思维导图
查看>>