部署springboot项目到公网上linux版本(centos+springboot)

部署springboot项目到公网上

1.1基本的环境搭建需要

①mysql环境

②jdk环境

③maven的下载

④可选的docker(更加方便版本控制,解决兼容性问题)

1.1.1mysql的安装下载(相对复杂)推荐使用docker进行下载

1.首先查看服务器系统的版本及内核版本来确定将要安装的docker

cat /etc/redhat-release

在这里插入图片描述

2.查看服务器内核版本

uname -r

以上两步其实对docker安装用处不大,不过可以让我们更了解自身服务器版本,为安装之后的各种软件打下基础,也更好的找到相关教程。

3.安装下载器用来下载docker包

yum install -y yum-utils device-mapper-persistent-data lvm2

在这里插入图片描述

4.设置阿里云镜像,下载更快

yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

在这里插入图片描述

5.重要一步,安装docker

yum install -y docker-ce

在这里插入图片描述

6.设置docker开机自启动

systemctl start docker    #打开docker
systemctl enable docker      #设置开机自启动

7.查看docker版本等信息

docker version

想要详细了解docker使用及原理的家人们可以参考如下

--------------------------进入正题---------------------------------------------------

使用docker安装mysql

  1. 安装MySQL的多级安装目录
  • 使用 -p 创建多级目录,即 mydata 目录下创建 mysql 目录, mysql 目录下又创建 log 、data 、conf 三个目录:
mkdir -p /mydata/mysql/log
mkdir -p /mydata/mysql/data
mkdir -p /mydata/mysql/conf
  • 拉取镜像

    docker pull mysql:5.7
    

    拉取镜像时候版本可以根据自己的需要进行版本调整

    在这里插入图片描述

  • 查看镜像

    docker images
    

    在这里插入图片描述

2.创建容器:使用自定义的 custom.cnf 配置文件。

(1)在 /mydata/mysql/conf/ 目录下创建自定义的 custom.cnf 配置文件。文件名随意,文件格式必须为 .cnf

vim /mydata/mysql/conf/custom.cnf

(2)添加容器运行的配置参数。使用的是 utf8mb4 编码而不是 utf8 编码

[client]
default-character-set=utf8mb4
 
[mysql]
default-character-set=utf8mb4
 
[mysqld]
init_connect="SET collation_connection = utf8mb4_unicode_ci"
init_connect="SET NAMES utf8mb4"
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

(3)创建容器并运行。

 docker run --name mysql -v /mydata/mysql/log:/var/log/mysql -v /mydata/mysql/data:/var/lib/mysql -v /mydata/mysql/conf:/etc/mysql/conf.d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

(4) 进入容器既进入mysql数据库库

docker exec -it mysql bash

在这里插入图片描述

(5) 进入数据库

mysql -u root -p123456

在这里插入图片描述

此时已经基本完成, 但是连接会出现问题,那就是要进行远程连接的授权。

use mysql;
GRANT ALL PRIVILEGES ON *.* TO root@'%' WITH GRANT OPTION;    #给用户分配远程权限

FLUSH PRIVILEGES;强制刷新权限,此时就可以使用root用户进行远程登陆了

最后再服务器中安全组或者防火墙中添加3306端头即可进行远程连接。

以上如果是新手推荐再腾讯元上领取一个月的免费试用服务器,之后选择cenos-docker这个,这样docker就内置了,省去了docker的安装

建议使用xshell xftp等软件进行操作服务器。个人比较喜欢这两个软件。

1.1.2对jdk进行下载。

这里推荐用jdk1.8

这里不再建议使用docker安装jdk,环境变量配置起来相对麻烦(个人简介,如果有家人知道更简便的方法,欢迎分享评论区,一起交流学习。)

#进入安装包目录,解压
cd /data/tmp
tar -zxvf jdk-8u301-linux-x64.tar.gz

#把解压出来的文件夹转移到统一的地方
mv /data/tmp/jdk1.8.0_301 /data/service/jdk1.8.0_301

#修改环境变量/etc/profile,JAVA_HOME修改为自己的jdk路径。
vim /etc/profile
export JAVA_HOME=/data/service/jdk1.8.0_301
export PATH=$PATH:$JAVA_HOME/bin

#使环境变量生效
source /etc/profile

#检查是否配置成功
java -version
1.1.3下载maven

从Maven官方网站上下载最新版的压缩包。下载完成后,进行解压和配置环境变量。

下载地址:https://maven.apache.org/download.cgi

#进入安装包目录,解压
cd /data/tmp
tar -zxvf apache-maven-3.6.3-bin.tar.gz
mv apache-maven-3.6.3 /data/service/

#修改环境变量/etc/profile,MAVEN_HOME修改为自己的路径。
export MAVEN_HOME=/data/service/apache-maven-3.6.3
export PATH=$PATH:$MAVEN_HOME/bin

#使环境变量生效
source /etc/profile

#检查是否配置成功
mvn -v

1.2操作中的细节要求

所有准备工作已经准备好了,剩下的是将项目导出成jar包

这里再windows中idea中进行操作,maven可以自带打包功能

需要注意以下几点

在这里插入图片描述

最后会生成target文件夹

在这里插入图片描述

在这里插入图片描述

其中.jar文件就是生成的文件

在生成之前我们需要再项目源文件中调整一处地方

  1. 数据库修改一下(改成公网上的数据库)
  2. 将本地数据库上的数据导入到服务器上(这里就不再介绍了,简单来说就是导出sql文件,再运行sql文件。)会用到navicat可视化界面进行。当然其他的数据库连接工具也可以。

在这里插入图片描述

在这个文件夹中对数据库进行修改,如果你的数据库连接操作在其他yml文件中,一样的,将数据库连接修改为公网ip对应的

在这里插入图片描述

1.3运行

在这里插入图片描述

进入到jar包所存放的位置执行下方代码

java -jar jar包名

出现图片中的就运行成功了,然后,手机电脑访问一下试试吧!

如果访问不了,将服务器的防火墙关闭,同时再安全组中添加8080端口,如果你的端口是其他的一样的,添加到安全组即可。

(1)service iptables stop关闭防火墙;

(2)service iptables start开启防火墙;

(3)service iptables reload重新加载防火墙;

(4)service iptables restart重启防火墙;

代码

java -jar jar包名

出现图片中的就运行成功了,然后,手机电脑访问一下试试吧!

如果访问不了,将服务器的防火墙关闭,同时再安全组中添加8080端口,如果你的端口是其他的一样的,添加到安全组即可。

(1)service iptables stop关闭防火墙;

(2)service iptables start开启防火墙;

(3)service iptables reload重新加载防火墙;

(4)service iptables restart重启防火墙;

搞定!!!!!(只是基础版本,不喜轻喷)欢迎大家指点,一起交流讨论!!!!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值