很多小伙伴在生产环境中部署SpringBoot都是通过打包成jar包一键运行,或者达成war包放在Tomcat下运行,而容器化部署应当是目前最主流的方案;
不同于传统的单体应用,微服务由于服务数量众多,在部署的时候出现问题的可能性更大,这时候,使用docker来部署,就能很好地解决这个问题,这也是目前使用较多的方案之一;
今天,笔者会聊一聊如何将SpringBoot项目一键打包到远程docker容器中,然后通过运行镜像的方式启动一个SpringBoot项目;
参考链接:https://mp.weixin.qq.com/s/vSCQLvQBYMYoPhdlO2v3XA
一、准备环境
- Windows10
- IDEA2019
- JDK1.8
- Maven 3.6.0
- CentOS 7
- Docker版本:1.13.1
二、准备工作
1.准备docker
首先要在CentOS 7上安装好Docker,读者可以结合网上教程及下列命令进行安装
1.检查内核版本,必须是3.10及以上
uname -r
2.安装docker
yum install docker
3.输入y确认安装
4.启动docker
systemctl start docker
docker -v(查看docker版本)
Docker version 1.13.1, build 7f2769b/1.13.1
5.设置docker为开机启动
[root@izwz91p7ptv6xnhkarxg4nz admin]# systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
6.停止docker
systemctl stop docker
Docker安装完成后,我们首先要修改Docker配置,开启允许远程访问Docker的功能,方式如下:
打开/usr/lib/systemd/system/docker.service文件,加入以下内容
-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
如下图所示
配置完成后,保存退出,重启docker,命令如下
systemctl daemon-reload
service docker restart
2.准备IDEA环境
IDEA上的准备工作,主要是安装Docker插件,点击
File->Settings->Plugins->在搜索框中查找Docker
如下(这里我已经安装完成,安装完成后需要重启IDEA)
重启完成后,需要配置Docker的远程连接地址,打开
File->Settings->Build,Execution->Deployment->Docker
3.准备项目
这一过程很简单,创建一个Spring Boot项目,引入web模块,创建成功后,再创建一个控制器HelloDockerController
@RestController
public class HelloDockerController {
@GetMapping("/hello")
public String hello