Docker(四)打包SpringBoot项目并部署

1.把SpringBoot项目打包成jar包:
参考:https://blog.csdn.net/sinat_27672523/article/details/81985805
打成jar包也可以直接点击install
在这里插入图片描述
生成在target下面
在这里插入图片描述
可能遇到的问题:https://blog.csdn.net/qq_40351478/article/details/88991778
2.编写Dockerfile文件:

FROM openjdk:8-jdk-alpine
COPY ai_farm-0.0.1-SNAPSHOT.jar app.jar
EXPOSE 8080
ENTRYPOINT ["java","-jar","/app.jar","--spring.profiles.active=test"]

3.使用Xftp连接Linuk服务器,并新建一个文件夹,将jar文件和Dockerfile放入文件夹中
在这里插入图片描述
4.ssh连接Linuk服务器,进入刚刚新建的文件夹,使用如下命令新建镜像
在这里插入图片描述

docker build -t ai_fram .

5.docker images 查看镜像
在这里插入图片描述
6.使用如下命令在指定端口启动容器

docker run -d -p 5000:8080 ai_fram

7.浏览器上查看
在这里插入图片描述
8.虽然springboot项目已经部署好了,但是mysql数据库还得部署。首先要将项目的sql导入docker的mysql容器中,关于docker中mysql导入外部sql参考:
https://blog.csdn.net/qq_37674858/article/details/80082903
https://blog.csdn.net/u012160319/article/details/81111289

//拉取mysql镜像
cker pull mysql
//启动mysql容器,MYSQL_ROOT_PASSWORD后为指定密码
docker run --name mysql -p 5002:3306  -e MYSQL_ROOT_PASSWORD=123 -d mysql
//查看mysql容器id
docker ps
//复制sql进入容器
sudo docker cp ai_fram.sql containerID:/var

在容器内ls查看目录,看看你复制的sql到指定位置没有,我是复制到var文件夹下面的
在这里插入图片描述
9.进入mysql容器

//进入容器
docker exec -it containerID bash
//进入mysql
mysql -h localhost -u root -p

成功的话你会看到
在这里插入图片描述
10.运行sql创建表

//创建数据库
create database ai_fram;
//查看数据库
show databases;
//进如数据库
use ai_fram;
//查看表
show tables;
//导入sql
source /var/ai_fram.sql;
//查看表
show tables;

在这里插入图片描述
11.docker连接项目容器与mysql
参考:https://www.jb51.net/article/126278.htm

//删除之前正在运行的项目的容器
docker rm -f containerID 
//将springboot系统重启连接mysql
docker run --rm -d -p 5000:8080 --link mysql:ai_fram 镜像

d是在后台运行,如何不想后台运行,可以将-d参数替换为-it,这样可以看到项目的输出信息。当然,也可以通过docker logs container-name/container-id查看容器日志。p参数将容器中Spring Boot默认的8080端口映射到了宿主机的5000端口。link参数连接到了mysql容器,并使用了别名ai_fram。
大功告成!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值