系统版本信息查询
-
查看系统信息
uname -a[root@instance-1 cb]# uname -a
Linux instance-1 2.6.32-754.29.1.el6.x86_64 #1 SMP Mon Apr 27 15:30:33 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux -
查看正在运行的内核版本
cat /proc/version[root@instance-1 cb]# cat /proc/version
Linux version 2.6.32-754.29.1.el6.x86_64 (mockbuild@x86-01.bsys.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-23) (GCC) ) #1 SMP Mon Apr 27 15:30:33 UTC 2020 -
查看发行版本信息
cat /etc/redhat-release[root@instance-1 cb]# cat /etc/redhat-release
CentOS release 6.10 (Final) -
显示LSB和特定版本的相关信息
-
先安装lsb
yum install lsb -
查看版本信息
lsb_release -a[root@instance-1 cb]# lsb_release -a
LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID: CentOS
Description: CentOS release 6.10 (Final)
Release: 6.10
Codename: Final
-
-
查看系统64还是32位
getconf LONG_BIT[root@instance-1 cb]# getconf LONG_BIT
64
更改文件权限
-
每个人都有读和写以及执行当前文件及其所包含的子目录的权限
chmod -R 777 ./java -
每个人都有读和写以及执行的权限
chmod 777 ./java -
每个人都有读和写的权限
chmod 666 ./java -
只有所有者有读和写以及执行的权限
chmod 700 ./java -
所有者有读和写的权限,组用户只有读的权限
chmod 644 ./java -
只有所有者有读和写的权限
chmod 600 ./java
安装JDK
下载JDK
-
下载地址:jdk历史版本
-
选择对应的jdk版本
-
选择对应的系统版本
解压JDK
-
在系统
/usr/local目录下新建java文件夹mkdir /usr/local/java -
使用Xftp将压缩包传输到
/usr/local/java目录 -
进入Java目录
cd /usr/local/java -
解压压缩包
tar -zxvf jdk-8u241-linux-x64.tar.gztar 备份文件
-zxvf
-z 通过gzip指令处理备份文件
-x 从备份文件中还原文件
-v 显示指令执行过程
-f 指定备份文件
jdk-8u201-linux-x64.tar.gz 文件名
-
删除压缩包
rm -f jdk-8u241-linux-x64.tar.gzrm 删除文件或目录
-f 强制删除文件或目录
配置JDK环境变量
-
打开全局变量文本
vim /etc/profile -
光标移动到文本末,按
i进入编辑模式 -
粘贴以下文本,按
Esc并输入:wq保存退出编辑器#java environment export JAVA_HOME=/usr/local/java/jdk1.8.0_241 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin -
让设置的环境变量生效
source /etc/profile -
配置执行脚本,避免需要每次使环境变量生效
-
打开脚本文件
vi ~/.bashrc -
在末尾添加
source /etc/profile
-
检查是否配置成功
-
查看jdk版本
java -version
安装Tomcat
下载Tomcat
-
下载地址:Tomcat版本
-
选择对应的tomcat版本
-
选择对应的系统版本
解压Tomcat
-
在系统
/usr/local目录下新建tomcat文件夹mkdir /usr/local/tomcat -
使用Xftp将压缩包传输到
/usr/local/tomcat目录 -
进入Java目录
cd /usr/local/tomcat -
解压压缩包
tar -zxvf apache-tomcat-8.5.54.tar.gz -
删除压缩包
rm -f apache-tomcat-8.5.54.tar.gz
启动Tomcat
-
进入Tomcat的bin目录
cd usr/local/tomcat/apache-tomcat-8.5.54/bin/ -
启动Tomcat
./startup.sh -
访问Tomcat,浏览器地址栏输入:
服务器外网ip:8080 -
关闭Tomcat
./shutdown.sh
安装MySQL | MariaDB
安装并配置MariaDB
-
安装
yum -y install mariadb-server -
启动
systemctl start mariadb #启动服务 systemctl enable mariadb #设置开机启动 systemctl restart mariadb #重新启动 systemctl stop mariadb.service #停止MariaDB -
初次登录root密码为空,不需要密码,直接回车登录到MariaDB
mysql -uroot -
修改root密码
use mysql;update user set password=password("123456") where user='root';flush privileges; -
退出,使用密码重新登录
exit;mysql -uroot -p -
修改数据库字符集,使支持中文
- 修改配置文件
vi /etc/my.cnf - 在
[mysqld]的段中添加character-set-server=utf8 - 重启mariadb服务
systemctl restart mariadb - 登录MySQL,再执行
show variables like 'char%';,可以看到字字符集为utf8
- 修改配置文件
-
配置远程连接权限
-
首先在本地进入MariaDB数据库的mysql库内
use mysql; -
创建用户
grant all PRIVILEGES on *.* to user@'%' identified by 'password';*表示允许访问所有库,也可以在这里写库名,则只能访问这个库,.*表示所有表并把该数据库的所有表的所有权限给user这个用户,允许这个用户通过任何ip地址(也可限定IP地址,
%改成允许的IP),使用指定
password进行连接。 -
刷新配置
flush privileges;
-
配置SSL安全证书
获取 ssl
-
可以从各大网站获取免费的ssl证书
-
把获取的ssl证书下载到本地(需要确认对应的服务器)
-
把ssl进行解压
配置 ssl
-
在
/usr/local/tomcat/apache-tomcat-8.5.54下新建cert文件夹,并把解压的 ssl 文件传输到cert中 -
打开
/usr/local/tomcat/apache-tomcat-8.5.54/conf目录中的server.xml,修改以下内容-
修改为:
<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="443" /> -
新增(其中
keystoreFile为证书绝对路径;keystorePass为证书中的密码)<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" keystoreFile="/usr/local/tomcat/apache-tomcat-8.5.54/cert/domains.jks" keystorePass="y6KTdz2j" clientAuth="false" sslProtocol="TLS" />
-
-
打开
/usr/local/tomcat/apache-tomcat-8.5.54/conf目录中的web.xml,在</welcome-file-list>后增加以下内容<login-config> <!-- Authorization setting for SSL --> <auth-method>CLIENT-CERT</auth-method> <realm-name>Client Cert Users-only Area</realm-name> </login-config> <security-constraint> <!-- Authorization setting for SSL --> <web-resource-collection > <web-resource-name >SSL</web-resource-name> <url-pattern>/*</url-pattern> </web-resource-collection> <user-data-constraint> <transport-guarantee>CONFIDENTIAL</transport-guarantee> </user-data-constraint> </security-constraint> -
进入
/usr/local/tomcat/apache-tomcat-8.5.54/bin目录,启动 tomcat./startup.sh -
浏览器地址栏输入
服务器外网IP,出现安全证书标志则说明配置正确
部署项目到服务器
jar 包部署
项目打包
- 在IDEA中maven菜单栏分别点击
clean``package - 将项目target目录下的jar复制出来
部署
-
把 jar 包上传至
/usr/local/tomcat/apache-tomcat-8.5.54/webapps目录 -
运行 jar
-
单次运行(日志输出在终端)
java -jar renren-admin.jar -
后台运行(日志输出在
renren.log)nohup java -jar renren-admin.jar --spring.profiles.active=prod > renren.log 2>&1 &
-
war 包部署
项目打包
-
启动类继承
SpringBootServletInitializer并重写configure()@SpringBootApplication public class AdminApplication extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(AdminApplication.class); } public static void main(String[] args) { SpringApplication.run(AdminApplication.class, args); } } -
pom.xml中打包方式改为war<modelVersion>4.0.0</modelVersion> <artifactId>renren-admin</artifactId> <packaging>war</packaging> <description>renren-admin</description> -
pom.xml:移除内嵌的 tomcat 模块,但是为了我们在本机测试方便,我们还需要引入它,所以配置如下<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency> -
pom.xml:添加tomcat-servelt-api依赖<dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-servlet-api</artifactId> <version>7.0.42</version> <scope>provided</scope> </dependency> -
pom.xml:添加war插件,用来自定义打包以后的war包的名称<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <configuration> <warSourceExcludes>src/main/resources/**</warSourceExcludes> <warName>springboot</warName> </configuration> </plugin>
部署
-
把 war 包上传至
/usr/local/tomcat/apache-tomcat-8.5.54/webapps目录 -
删除
webapps中的ROOT目录,并把 war 包改名为ROOT.war(可以让我们能使用域名直接访问,而不用加项目名) -
进入
/usr/local/tomcat/apache-tomcat-8.5.54/bin目录,启动 tomcat./startup.sh
查询删除进程
-
根据任务名查询进程PID
ps aux|grep renren-admin.jar[root@instance-4 webapps]# ps aux|grep renren-admin.jar
root44572.8 6.9 3045836 250160 ? Sl 08:34 0:23 java -jar renren-admin.jar --spring.profiles.active=prod
root 4822 0.0 0.0 112808 976 pts/0 S+ 08:48 0:00 grep --color=auto renren-admin.jar -
根据端口号查询进程PID
-
先安装
lsofyum install lsof -
查询进程
lsof -i:8010
-
-
结束进程
kill -9 4457(进程号)
服务器防火墙端口开放列表
| 端口 | 服务 | 说明 |
|---|---|---|
| 21 | FTP | FTP服务所开放的端口,用于上传、下载文件。 |
| 22 | SSH | SSH端口,用于通过命令行模式或远程连接软件(例如PuTTY、Xshell、SecureCRT等)连接Linux实例。详情请参见使用用户名密码验证连接Linux实例。 |
| 23 | Telnet | Telnet端口,用于Telnet远程登录ECS实例。 |
| 25 | SMTP | SMTP服务所开放的端口,用于发送邮件。基于安全考虑,ECS实例25端口默认受限,如需解封,请参见TCP 25端口控制台解封申请。 |
| 53 | DNS | 用于域名解析服务器(Domain Name Server,简称DNS)协议。如果在安全组出方向实行白名单方式,需要放行此端口才能实现域名解析。 |
| 80 | HTTP | 用于HTTP服务提供访问功能,例如,IIS、Apache、Nginx等服务。如何排查80端口故障,请参见检查TCP 80端口是否正常工作。 |
| 110 | POP3 | 用于POP3协议,POP3是电子邮件收发的协议。 |
| 143 | IMAP | 用于IMAP(Internet Message Access Protocol)协议,IMAP是用于电子邮件的接收的协议。 |
| 443 | HTTPS | 用于HTTPS服务提供访问功能。HTTPS是一种能提供加密和通过安全端口传输的一种协议。 |
| 1433 | SQL Server | SQL Server的TCP端口,用于供SQL Server对外提供服务。 |
| 1434 | SQL Server | SQL Server的UDP端口,用于返回SQL Server使用了哪个TCP/IP端口。 |
| 1521 | Oracle | Oracle通信端口,ECS实例上部署了Oracle SQL需要放行的端口。 |
| 3306 | MySQL | MySQL数据库对外提供服务的端口。 |
| 3389 | Windows Server Remote Desktop Services | Windows Server Remote Desktop Services(远程桌面服务)端口,可以通过这个端口使用软件连接Windows实例。详情请参见在本地客户端上连接Windows实例。 |
| 8080 | 代理端口 | 同80端口一样,8080端口常用于WWW代理服务,实现网页浏览。如果您使用了8080端口,访问网站或使用代理服务器时,需要在IP地址后面加上:8080。安装Apache Tomcat服务后,默认服务端口为8080。 |
| 137、138、139 | NetBIOS协议 | 137、138为UDP端口,通过网上邻居传输文件时使用的端口。139通过这个端口进入的连接试图获得NetBIOS/SMB服务。NetBIOS协议常被用于Windows文件、打印机共享和Samba。 |

本文详细介绍了如何在Linux CentOS系统上部署Java Spring项目,包括安装JDK,配置环境变量,安装Tomcat,设置MySQL/MariaDB,配置SSL证书,以及通过jar和war包方式部署项目。此外,还涵盖了服务器防火墙端口的开放操作。
4303

被折叠的 条评论
为什么被折叠?



