快速上手 Linux 系统部署 Java 项目(附安装包、文档、视频)!

  Java大联盟

  帮助万千Java学习者持续成长

关注

1、安装 VMware Workstation

VMware Workstation 是一款桌面虚拟计算机软件,可在一部实体机器上模拟完整的网络环境,我们通过 VMware 可以在单一的桌面上同时运行不同的操作系统,进行代码的开发、测试 、部署。

2、VMware 导入 CentOS 7

CentOS 是企业级 Linux 的发行版之一,完全开源,并且完全免费,最新版本是 CentOS 8,但是目前市场主流使用的是 CentOS 7,甚至还有很多人在用 CentOS 6,我们这次的课程针对 CentOS 7 来讲解。

1、打开 VM,导入 CentOS.vmx。

默认的网络配置是桥接模式,不建议大家使用这种方式,因为这种方式的 IP 地址可能会改变,导致你无法访问 CentOS 系统,桥接模式是直接连接物理网络,也就是将虚拟机直接接入当前的网络环境中,并且独占 IP,如果你的网络不稳定,这种方式访问 CentOS 不稳定。

一般在自己本地测试的时候,推荐大家使用 NAT 模式,相当于在 Windows 系统中独立开辟了一块新的网络空间,IP 地址是固定不变的,所以无论你有没有接入外网都可以直接访问 CentOS 。

我们将网络设置为 NAT 模式。

2、虚拟机设置。

3、在虚拟网络编辑器中修改网络设置,必须以管理员身份修改。

4、选择 NAT 模式。

5、开启虚拟机。

6、点击我已复制该虚拟机。

7、点击 Not listed,使用 root 权限登录,输入用户名(root)和密码(123456)。

8、初始化选择语言,输入法等设置,完毕之后来到欢迎页面,点击开始使用 CentOS Linux(S) 进入桌面。

9、通过终端命令查看 CentOS IP 地址,如 192.168.1.111。

3、Xshell 连接 CentOS

1、打开 Xshell,新建会话,输入 CentOS IP,端口默认为 22,点击连接。

2、输入用户名密码。

3、连接成功。

4、安装 JDK

1、卸载 CentOS 自带的 OpenJDK,可以通过命令查看。

rpm -qa | grep jdk

2、通过命令删除。

rpm -e --nodeps java-1.8.0-openjdk-1.8.0.65-3.b17.el7.x86_64
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.65-3.b17.el7.x86_64
rpm -e --nodeps java-1.7.0-openjdk-1.7.0.91-2.6.2.3.el7.x86_64
rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.91-2.6.2.3.el7.x86_64
3、查看是否删除成功。

4、在 /usr/local 目录下新建 java 文件夹,并进入。

cd /usr/local
mkdir java
cd java
5、打开 Xftp,将 JDK 安装文件拷贝到 java 目录。

6、使用命令进行安装。

rpm -ivh jdk-8u221-linux-x64.rpm

7、配置环境变量。

vim /etc/profile

按 i 进行输入,复制如下内容。

JAVA_HOME=/usr/java/jdk1.8.0_221-amd64
CLASSPATH=%JAVA_HOME%/lib:%JAVA_HOME%/jre/lib
PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export PATH CLASSPATH JAVA_HOME

按 Esc 退出,输入 :wq,回车退出保存。

8、让配置生效。

source /etc/profile
9、检查安装是否成功。
java -version

5、安装 Tomcat

1、在 /usr/local 目录下新建 tomcat 文件夹,并进入。

cd /usr/local
mkdir tomcat
cd tomcat

2、打开 Xftp,将 Tomcat 压缩文件拷贝到 tomcat 目录。

3、解压缩。

tar -zxvf apache-tomcat-9.0.34.tar.gz

4、进入 /apache-tomcat-9.0.34/bin 路径启动 Tomcat。

./startup.sh

启动成功之后,可以在 CentOS 中直接访问。

如果要关闭 Tomcat,执行如下命令即可。

./shutdown.sh

但是现在我们还无法在本地直接访问,这是因为 CentOS 没有开放 8080 端口导致的。

5、CentOS 开放 8080 端口。

(1)、查看防火墙状态。

firewall-cmd --state

runing 表示开启,not runing 表示关闭,如果关闭,执行如下命令开启。

systemctl start firewalld.service

(2)、开启 8080 端口。

firewall-cmd --zone=public --add-port=8080/tcp --permanent

--zone=public:表示作用域为公共的;

--add-port=8080/tcp:添加tcp协议的端口8080;

--permanent:永久生效,如果没有此参数,则只能维持当前服务生命周期内,重新启动后失效;

(3)、输入命令重启防火墙。

systemctl restart firewalld.service

(4)、输入命令重新载入配置。

firewall-cmd --reload

(5)、将打包之后的 war 拷贝到 Tomcat/webapps 下,启动访问即可。

6、部署 Spring Boot 应用

1、本地新建 Spring Boot 应用,打包,先执行 clean。

2、执行 package 进行打包。

打包成功,target 目录下可以看到 jar 文件。

3、先测试本地发布,CMD 进入 jar 目录,执行如下命令。

java -jar demo-0.0.1-SNAPSHOT.jar

4、启动成功,浏览器访问 localhost:8080/hello/index

5、通过 Xftp 将 jar 包拷贝到 CentOS。

6、命令行启动 Spring Boot 应用。

java -jar demo-0.0.1-SNAPSHOT.jar

7、打开浏览器访问,注意,如果 Spring Boot 端口不是 8080,需要提前在 CentOS 中开放对应端口。

7、安装 MySQL

1、新建 /usr/local/mysql,将 MySQL 安装包拷贝过去。

2、进入 /usr/local/mysql,解压。

tar -xvf mysql-8.0.20-1.el7.x86_64.rpm-bundle.tar

3、安装 MySQL 之前需要先删除 mariadb,执行如下命令检查是否存在 mariadb。

rpm -qa | grep mariadb

4、执行如下命令卸载 mariadb。

rpm -e mariadb-libs-5.5.44-2.el7.centos.x86_64 --nodeps

5、安装 common。

rpm -ivh mysql-community-common-8.0.20-1.el7.x86_64.rpm --nodeps --force

6、安装 libs。

rpm -ivh mysql-community-libs-8.0.20-1.el7.x86_64.rpm --nodeps --force

7、安装 client。

rpm -ivh mysql-community-client-8.0.20-1.el7.x86_64.rpm --nodeps --force

8、安装 server。

rpm -ivh mysql-community-server-8.0.20-1.el7.x86_64.rpm --nodeps --force

9、检查安装结果。

rpm -qa | grep mysql

10、初始化 MySQL。

mysqld --initialize

11、授权防火墙。

chown mysql:mysql /var/lib/mysql -R;
systemctl start mysqld.service;
systemctl enable mysqld;

12、查看数据库默认密码。

cat /var/log/mysqld.log | grep password

13、登录数据库。

mysql -uroot -p

14、复制粘贴密码。

15、登录成功,修改密码。

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';

16、exit 退出,使用新密码重新登陆。

17、开启远程访问。

create user 'root'@'%' identified with mysql_native_password by 'root';
grant all privileges on *.* to 'root'@'%' with grant option;
flush privileges;

18、CentOS 开放 3306 端口。

firewall-cmd --zone=public --add-port=3306/tcp --permanent
systemctl restart firewalld.service
firewall-cmd --reload

19、使用 DataGrip 连接,如果报如下错误,是数据库的时区问题,因为 MySQL 安装默认设置为美国时区,而北京时间比美国晚 8 小时。

在数据库中修改时区即可。

set global time_zone='+8:00';

再次连接,成功。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值