03-后端本地部署运行

1. 环境

2. 本地启动

1. 安装依赖

e713576812e341a793d802953ba9174d

老 UI

0698eff145b54cb58f5e22c330334b0a
d903c6631c3142d2be083af72005b0fc

一定要确保 Use setting from .mvc/maven.conf 这个是非选择的状态!

c69cad1387a54441afd3ab30a2061e07

第二个 config file 选着自己安装好的目录下的 conf/setting.xml (需要配置好镜像,要不速度比较慢)

最后修改完成的状态

f191232d91e249b8a4d83c0cdd018619

Local repository 也可以覆写,这个默认配置的是下载依赖的路径 C 盘,随着时间累计后面可能会比较大

7ff387afb8e1431eab7528933e27b00b

点击上面的之后,正常下面的 build 就会在下载依赖

0c2b3f74c0d7462c9497c8d17acaba60

安装完成之后

3fbf2f42d6b34cb2963aa4895e837b4c

2. 数据库

49ca0a5a28084f3e86f9b79c0d5449f6

先下载 IDEA 连接 MySql 所需要的依赖

ba06be16ee344411ba49ebfcb495df94
50801a27003947488de4aae98c2d3727

1、找到根目录的 sql 文件夹里面的 create_table.sql

ff403ec519e34055a9147503059a5884

2、点击上方黄色框框里面的 Use MySql

eTlIbjFiYkRKdS96SHZrc1NxN28yKytGdGg3UjNBM2xKRFg5b09ZPQ==

3、执行代码

首先 CTRL + A 然后鼠标右键 选择 Execute 选择 new Session 就可以执行成功了

2d4426279eeb40408792b31f9bf7e322

4、最后执行效果

695c1d8316f5493da8e0e76028251d61

7、查询数据库内容

YXJOV1dyZGdGclBSN3FFSW8wOGVUdStGdGg3UjNBM2xKRFg5b09hR2p3PT0=

如果没有看到yupi 数据库,点击 localhost 后面的框,在下拉框找到 yupi 点击前面方框就可以看到 yupi 数据库了

7a11f15ccb9c41b3bf834b6f354d2f4d

6、小插曲

TWs5TEpha3dNdWgxV0xxaVYwVGhvdStGdGg3UjNBM2xKRFg5b09hR2p3PT0=

解决方法

1、修改 user 表的 username 的字符集为 utf8_bin

2、重新执行那一句 SQL 执行成功 !

1)在 yupi 数据库下的 user 表右键

eEo4emhXSUNEV1lRVTd4YlU0T1ZLTytGdGg3UjNBM2xKRFg5b09hR2p3PT0=b0f587da1b284a3091902564f384b26696b98a0712be4133ad4033fe65fe0b12

3. 修改配置文件

1、一般配置文件叫 application.yml (谷牛的项目一般都用 yml )

7b387a1f770f4a73921f92a7b8a3d7c7

1)application.yml 是本地运行时使用的配置文件

2)application-prod.yml 是服务器运行时生效的文件

3)第二个文件生效是靠最后在在服务器(宝塔命令行)执行时 --spring.profiles.active=prod

2、修改 MySql 的密码,spring.datasource.password 修改成 MySql 设置的密码

d139ddf491d3488a83810e0d4b996783

3、部署的时候修改 application-prod.yml 里面的配置

4. 运行项目

aVRNK0U5SGppandBcGVRckVhRmI2TytGdGg3UjNBM2xKRFg5b09hR2p3PT0=
79b11b8648b14e0b9515f668974eb121
b6f1b6103ea741c09721ed49ef6b7ddc
MFBjN1JCNHJ0UDJmYkxwWlBmSHBhTytGdGg3UjNBM2xKRFg5b09hR2p3PT0=

点击 Enable annotation processing

ddfedadd8f8f435782409bc0644d1176

启动成功!!!

3. 部署

1. 打包

确认修改好 application-prod.yml 里面的配置 ,之后再进行打包

be824e736e664694b218dc287c99e69e
bk9PMFVLc3ZDRUZmWmNzaTFVNmxhdStGdGg3UjNBM2xKRFg5b09hR2p3PT0=

打包完成之后可以在 target 目录下可以找到 jar

c19b83ba6b1b4b37886c7e16dd56a531

2. 宝塔

1. 安装宝塔 Java 环境

9e6d07db275c458283aba7f3d48af614
9b2ed7e480a84481b38310834d3fbc50

安装需要的 JDK ,这个项目安装 1.8.0_371 就可以

2. 安装 MySQL

1、安装 MySQL

98d5159d325c4481855ce48e125980d3
Q29lL0ZabFBNNDlXc3dlL0dIK0U0dStGdGg3UjNBM2xKRFg5b09hR2p3PT0=

2、放行端口

eklHRWFMVmZYZ0ZZTXNPc1ZiK1BidStGdGg3UjNBM2xKRFg5b09hR2p3PT0=

还有服务器防火墙

e6fda134eea4451a9ab22348451874e3
SVR1ekZ6QmlPMGRlaXNYOHZTS0MrdStGdGg3UjNBM2xKRFg5b09hR2p3PT0=

4、创建数据库

7a99ad54fa374408b6caa8ffbedf60dc

5、允许远程连接

6bca25212b154f0dbaa33c77a5b1d96c

6、使用测试工具进行连接 (以 IDEA 自带的为例)

4c0cc7114b7d44e991cb8de5933c545b

连接失败怎么办?

1、检查服务器端口是否放开

2、检查创建数据库的时候选择的 访问权限 是否是 所有人

3、检查用户名密码

d4219c3d840f4afa9aa69edcc2b10829

3. 安装 Redis(可选)

1、安装 Redis

Mm9EVmxzNklTSzJzanVqZTNGSm9kZStGdGg3UjNBM2xKRFg5b09ZPQ==
f4c387f1d0c94ed48c95784548a0874e

4、修改设置文件

MXdLT09CclA5UllZUE03Y0Q4T0tYZStGdGg3UjNBM2xKRFg5b09hR2p3PT0=

修改 bind 变成 0.0.0.0

然后设置 requirepass 这个就是密码

然后重载配置

bXQ1aG1RNHF6WkxpSCt5ZEpwRHZoTytGdGg3UjNBM2xKRFg5b09hR2p3PT0=

5、放行端口

ae1ef0d7dd56407da18aacfd49fbe408

还有服务器防火墙

90bd5b25ac224e99a632bfceea2e7e0b

6、尝试连接 (以 IDEA 自带的为例)

08fa6156b84e4568b7a83acd6bda18d4
Y2tOaVphL3NoOEZScXU2UmlGWXUxZStGdGg3UjNBM2xKRFg5b09hR2p3PT0=

不需要填写用户名

密码填写之际之前在服务器requirepass

7、连接成功

MUhleXB5WU45M3VJRlZDR3N4N0Y5ZStGdGg3UjNBM2xKRFg5b09hR2p3PT0=

4. 运行项目

上传 jar 包到服务器任意文件夹 比如 /www

2aec2d0b6ab04630b29ce8bde029a9e2
a1hpR2lVc1didDllMlhsRTJYd1E5KytGdGg3UjNBM2xKRFg5b09hR2p3PT0=

--spring.profiles.active=prod 最后面添加上这个,在运行命令最后面,只有写这个生效的配置文件才是 application-prod.yml

dVBFODIrajZOeSt5alBldElwdkFFZStGdGg3UjNBM2xKRFg5b09hR2p3PT0=

3. Docker

MySQL、Redis 安装参考 mallchat 项目,有视频教程open in new window

1、切换到工作目录

cd ~

2、创建 Dockerfile 文件

touch Dockerfile
vi Dockerfile

把下面的内容复制进去 shift + insert 快捷键

FROM openjdk:8-jdk-alpine

WORKDIR /app

COPY ./user-center-backend-0.0.1-SNAPSHOT.jar ./app/application.jar

EXPOSE 8080

CMD ["java","-jar","./app/application.jar","--spring.profiles.active=prod"]

3、把 jar 包上传到和 Dockerfile 的同级目录下

使用 rz 命令、或者 WinScp 上传都可以

4、执行 docker build

docker build -t usercenter:v1.0 .
a9076fa8b8a949829d362848c98c3bb1

5、运行 docker 镜像

docker run -p 8080:8080 -t usercenter:v1.0
90e378e5edcf4f22b1ae9e19c3288825

6、查看运行是否成功

docker ps
S1hqTzRwU2xhckJ2QmRhSDVNV1lqdStGdGg3UjNBM2xKRFg5b09hR2p3PT0=

7、查看 log

docker logs -f  CONTAINER ID

比如

docker logs -f  4959304940e

CONTAINER ID 具体看 docker ps 里显示的 CONTAINER ID