开发者社区> 优惠码发放> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

前后端分离SpringBoot项目,Docker部署后端Jar包

简介: 前后端分离SpringBoot项目,Docker部署后端Jar包 Docker制作后端项目镜像 第一步 下载Docker 使用的是CentOS7,内核低于3.0好像不行,查看内核命令 uname -r yum install docker  1 常用docker命令 启动docker:syst.
+关注继续查看

前后端分离SpringBoot项目,Docker部署后端Jar包

Docker制作后端项目镜像
第一步 下载Docker
使用的是CentOS7,内核低于3.0好像不行,查看内核命令 uname -r

yum install docker 
1
常用docker命令
启动docker:systemctl start docker
停止docker:systemctl stop docker
重启docker:systemctl restart docker
查看docker状态:systemctl status docker
开机启动:systemctl enable docker
查看镜像: docker images
搜索镜像:docker search 镜像名称
下载镜像:docker pull 镜像名称
删除镜像:docker rmi
删除容器:docker rm
查看容器:docker ps
查看停止的容器:docker ps -a
查看最后一次运行的容器:docker pa -l
第二步 创建文件夹 mkdir docker
然后cd docker/
创建Dockerfile文件

# Docker image for springboot file run
# VERSION 0.0.1
# Author: pibigstar
# 基础镜像使用java
FROM java:8
# VOLUME 指定了临时文件目录为/tmp。
# 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
VOLUME /tmp 
# 将jar包添加到容器中并更名为app.jar
ADD 上传jar名称.jar 更改的名称.jar                        
# 运行jar包
RUN bash -c 'touch /更改的名称.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/更改的名称.jar"]

1
2
3
4
5
6
7
8
9
10
11
12
13
14



第三步 生成Docker镜像

docker build -t 生成的镜像名称 .
1
生成的镜像名称后面两个空格一个点切记

第四步 查看镜像是否生成docker images,然后生成容器

生成守护式容器名为linsir_web端口映射9000映射到容器内端口9000

docker run -di --name=linsir_web  -p 9000:9000 镜像名称
1
这样子镜像就制作完成了,还需要依赖数据库容器

docker search mysql
docker pull mysql
1
2
下载 版本根据个人决定,8.0的mysql需要设置
8.0版本的 root的用户的加密方式为caching_sha2_passoword, 而navicat连接所用的方式为native_password。mysql为远程连接和本地连接提供了不同的密码验证方式。

select host,user,plugin,authentication_string from om mysql.user;er;
ALTER user 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'server';
FLUSH PRIVILEGES;     #最后刷新下权限
1
2
3
再用SQLyog或者navicat远程连接测试一下能否连接成功
记得项目内applilcation配置文件中mysql路径要配置容器内数据库服务器ip与端口
查看容器ip信息 命令
docker inspect 容器名称
容器处于运行状态才可以看到IP



运行容器打开浏览器测试一下就OK啦,后端包就部署成功了
--------------------- 
作者:LinSirC 
来源:CSDN 
版权声明:本文为博主原创文章,转载请附上博文链接!

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
SpringBoot+Netty+WebSocket 实现消息推送
SpringBoot+Netty+WebSocket 实现消息推送
120 0
Springboot+Vue实现物业管理系统
使用SpringBoot+Mybatis+BootStrap+Layui+VUE制作的智慧小区物业管理系统。本系统采用了 B/S 架构,Java、Html、Css、Js 等技术,使用了主流的后台开发框架SpringBoot(SpringMVC+Spring+Mybatis),前端开发框架使用了 LayUI、Vue、JQuery 以及 Vue的前端组件库 Element-UI,采用了开源的轻量级数据库 Mysql 进行开发。实现了小区管理、房产管理、设备管理、业主管理、服务管理、车位管理等主要功能。...
48 0
SpringBoot实现定时任务的三种方式,总有一款适合你!
SpringBoot实现定时任务的三种方式,总有一款适合你!
199 0
SpringBoot+flowable快速实现工作流,so easy!
SpringBoot+flowable快速实现工作流,so easy!
1768 0
【Springboot】微服务学习笔记十:微服务项目整合Kafka实现文章上下架功能
【Springboot】微服务学习笔记十:微服务项目整合Kafka实现文章上下架功能
51 0
Springboot系列(十一):mybatis-plus实现多数据源配置,开箱即用 | 超级干货,建议收藏!
Springboot系列(十一):mybatis-plus实现多数据源配置,开箱即用 | 超级干货,建议收藏!
854 0
Springboot系列(七):mybatis-plus保姆级入门教程,手把手教你轻松实现增删改查 | 超级干货,建议收藏!
Springboot系列(七):mybatis-plus保姆级入门教程,手把手教你轻松实现增删改查 | 超级干货,建议收藏!
229 0
SpringBoot + thymeleaf 实现分页
用SpringBoot + thymeleaf可以 实现分页 。
331 0
如何在SpringBoot启动时执行初始化操作,两个简单接口就可以实现
最近遇到一个功能点,数据库中一张很简单的表有一千多条数据,这里的数据主要做到了值域映射的作用,简单来讲就是我可以通过中文名拿到数据库中对应的code值。原本的实现方式是每次用到之后去查一次sql,虽然不会有什么问题,但是只要是走了网络io,都会消耗时间。所以这个方案需要想办法优化。 优化的方式其实很简单,数据量不多,一千多条数据放在内存里也占不了多少空间。因此完全可以把一次性把数据加载到内存中,后面只需要每次去内存里调用就可以了。
255 0
Springboot通过过滤器实现对请求头的修改
之前在一个项目中有一个API服务需要重构,尤其是接口的用户身份校验,原先的实现是将用户token放在URL请求参数中,然后通过AOP进行校验,现在要统一将token放在header中,但是这样修改会让用户也相应的修改他们的客户端,为了使版本发布后不至于对用户的服务产生太大影响,所以我们不仅能通过he
722 0
+关注
优惠码发放
阿里云优惠码阿里云推荐券bieryun.com
文章
问答
文章排行榜
最热
最新
相关电子书
更多
Java Spring Boot开发实战系列课程(第17讲):Spring Boot 2.0实战Docker容器Linux
立即下载
云上Docker的Spring Cloud微服务应用实践分享
立即下载
我的Docker:Docker插件机制详解
立即下载