背景
今天接着上一次写到一半的继续写完,上次我们已经安装了Liunx虚拟服务机,并通过Xshell连接上了虚拟机,也在服务器上安装了java和Tomcat,今天就继续往下进行,尽量今天能更完
这是之前的两篇链接:
如何使用Xshell连接本地虚拟机服务器
步骤
2. 在Liunx上安装java,tomcat以及MySQL
1.安装并配置mysql
安装
更新数据源
apt-get update
安装MySQL
apt-get install mysql-server
系统将提示您在安装过程中创建 root 密码。选择一个安全的密码,并确保你记住它,因为你以后需要它。接下来,我们将完成 MySQL 的配置。
按上边方式安装完成后,MySQL 应该已经开始自动运行了。要测试它,请检查其状态。
查看MySQL版本
mysqladmin -p -u root version
配置远程访问
如果你要将项目部署到远程服务器上,那么你的数据库必须也得在远程服务器上,但MySQL自己默认了只能在本地进行连接,这时如果连接远程服务器IP时,MySQL会报错连接失败,这时,我们就要修改一下MySQL的默认配置
修改配置文件
vi /etc/mysql/mysql.conf.d/mysqld.cnf
注释掉这段(前面加#即可)
bind-address = 127.0.0.1
找到这段配置后,你可以选择直接注释掉,也可以选择不注释,不注释的话,就要将127.0.0.1
改为0.0.0.0
,4个0的意思就是允许任意IP连接
重启MySQL
service mysql restart
登录MySQL
mysql -u root -p
授权root用户允许所有人连接
grant all privileges on *.* to 'root'@'%' identified by '你的 mysql root 账户密码';
这条命令的就是不止是只有root权限的才能在远程登录MySQL,而是所有的用户都可以登录
常用命令
启动
service mysql start
停止
service mysql stop
重启
service mysql restart
安装以及配置环境终于完了,虽然很麻烦,但毕竟是一劳永逸的活儿,还可以接受吧,接下来就要到激动人心的时候了,将已经写好的springboot项目放进生产线上
2. 在本地将SpringBoot打成Jar包
查看pom.xml文件
如果你的pom.xml文件里有<packaging>jar</packaging>
就不用管了,如果没有,请在pom.xml文件里加上
如果你不想用默认的打包名,也可以自己设置打包名,即在pom.xml文件里加入下段代码
<build>
<finalName>自己设置的包名</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<repositories>
<repository>
<id>spring-milestone</id>
<url>http://repo.spring.io/libs-release</url>
</repository>
</repositories>
修改application.yml文件
因为你是要将整个项目部署到服务器上,那么肯定就不会使用本地数据库了,所以要在application.yml
文件里修改你之前在服务器上所连接的数据的IP地址以及密码
这些前期准备工作就绪后,就该使用Maven来将我们整个项目打成jar包
使用Maven打包
点击IDEA最右边的Maven Project,点击打开自己的项目名,再点击打开Lifecycle,最后双击packet,等待片刻即可得到新鲜出炉的项目jar包
成功打包后的项目jar包会默认的放在你项目的target
目录下,记着存放的地方,一会还要从里拿出来
上传jar包到服务器上
这个时候就该关闭你的IDEA,打开之前已经连接过服务器的Xshell软件了,打开后,上面功能栏有一个新建文件传输
的图标,打开它,会自动进入Xftp功能,在这上面就可以将本地的文件传到服务器端,像之前在服务器上安装Java和Tomcat都是需要这个软件,我感觉现在才介绍这个有点儿迟了,不行,我一会儿还得把这个放到之前写的那篇文章里,
点击进来后,会自动连接本地文件目录和远端服务器文件目录,就可以实现文件交换
建议在云端建一个专门存放从本地传输过来的文件,这样也方便管理,传输成功后,再打开Xshell,cd 到刚才存放文件的目录,因为是jar包,就可以直接使用命令在服务器端启动项目
java -jar 你的项目.jar
在这儿有的人可能会出现这样的报错
bash: java: command not found
问题呢,我也不太清楚,应该是超级管理员不能使用java命令行,但我可以解决问题,可能用普通用户来运行java命令会因为权限不够而不能启动,所以我们可以使用sudo
来运行,但前提是先在配置文件里添加配置
sudo vim /etc/sudoers
进去后在Defaults secure_path 中添加Java的路径
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/usr/java/jdk1.8.0_152/bin"
保存后就可以使用sudo
来运行java命令行了
这是我在Liunx虚拟服务器上成功运行出来的结果
小贴士
我们可以在本机的hosts文件里加上IP地址和我们想要的域名
192.168.145.130 www.myshop.com
并在打包本地项目前,设置端口号为80
,这样我们在啊浏览器上打开网址时就不必输入192.168.145.138:8080
这样的繁琐字段了。
是不是没有想像中的那么复杂,很easy的,这是在本地虚拟服务器上部署的过程,同样,如果你想买个云服务器来玩玩,步骤和这个是一模一样的,就是想那些云服务器的IP地址,账号,密码…都是你申请云服务器时一并给你的,操作步骤是一样的,可以现在虚拟服务器上练练手再买个云服务器玩玩