日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux云服务器下Tomcat部署超详细

發布時間:2025/7/14 linux 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux云服务器下Tomcat部署超详细 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?基于阿里云Centos 7服務器的Tomcat?項目部署

?

工具:一臺安裝jdk1.8的Centos 6/7.X?云服務器(64位)

Putty ?ssh遠程連接云服務器的軟件

FileZillaClient ??本地機與服務器文件互傳的軟件

?

步驟一:Centos 7安裝jdk1.8

1.putty?連接上云服務器

2進入到目錄?/usr/local/?中:

cd /usr/local/

3.創建目錄?tools:

mkdir -p tools

4.進入到目錄?/usr/local/tools?中:

cd tools/

5.?下載jdk-8u91-linux-x64.tar.gz

可以在官網上下載Linux -64?的jdk1.8,由FileZillaClient上傳到服務器上???

6.?tools目錄下解壓縮

tar -zxvf jdk-8u91-linux-x64.tar.gz

7.?返回到上一級并創建?/usr/local/jdk?目錄:

? cd ..

? mkdir -p jdk

8.?進入到?tools?目錄后將?jdk1.8.0_91?移動到?jdk?目錄中:

? cd ../tools/

mv jdk1.8.0_91/ ../jdk/

9?配置環境變量(很重要)

打開?/etc/?目錄下的?profile?文件:

? vi /etc/profile

??將如下代碼追加到?profile?文件末尾:

? # idea - jdk8 settings start 2016-08-01

?

JAVA_HOME=/usr/local/jdk/jdk1.8.0_91(自己安裝jdk的所在目錄)

?JRE_HOME=$JAVA_HOME/jre

?PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

?CLASSPATH=:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib/dt.jar

?export JAVA_HOME JRE_HOME PATH CLASSPATH

?

# idea - jdk8 settings end - 2016-08-01

?按?Esc?鍵、輸入?wq!?回車,保持并退出。

?

10?即可啟用新的配置:

?source /etc/profile

11

輸入?java -version?查看?JDK?的版本:

? [root@iZ94hws2fzlZ jdk1.8.0_91]# java -version

?java version "1.8.0_91"

?Java(TM) SE Runtime Environment (build 1.8.0_91-b14)

?Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)

證明安裝成功

注意:安裝jdk盡量用root用戶

步驟二安裝Tomcat服務器:

1.putty連接云服務器

2?進入到目錄?/usr/local/?中:

? cd /usr/local/

?

3?創建目錄?/usr/local/tools,如果有則忽略:

? mkdir -p tools

?

4?創建?/usr/local/tomcat?目錄,如果已存在則忽略:

? mkdir -p tomcat

?

5?進入到目錄?/usr/local/tools?中:

? cd tools/

?

6?下載?apache-tomcat-9.0.0.M4.tar.gz?文件:

?Wget?http://mirror.bit.edu.cn/apache/tomcat/tomcat-9/v9.0.0.M4/bin/apache-tomcat-9.0.0.M4.tar.gz

如果自動下載不能完成可以手動下載。去Tomcat官網下載相應版本的tar.gz包

?

7?解壓縮?apache-tomcat-9.0.0.M4.tar.gz:

? tar -zxvf apache-tomcat-9.0.0.M4.tar.gz

?

8?將通過解壓得到的?apache-tomcat-9.0.0.M4?文件復制到?/usr/local/tomcat?目錄中:

?mv apache-tomcat-9.0.0.M4 ../tomcat/

?

9?打開文件?/etc?目錄下的?profile?文件:(配置Tomcat環境變量)

? vim /etc/profile

將如下代碼追加到?profile?文件末尾:

?# idea - tomcat9 config start - 2016-05-01

?

?CATALINA_HOME=/usr/local/tomcat/apache-tomcat-9.0.0.M4

?CATALINA_BASE=/usr/local/tomcat/apache-tomcat-9.0.0.M4

?PATH=$PATH:$CATALINA_BASE/bin

?export PATH CATALINA_BASE

?

?# idea - tomcat9 config end - 2016-05-01

?保持并推出:wq!

?

10?修改?tomcat?的端口號和字符編碼:

?進入到?/usr/local/tomcat/apache-tomcat-9.0.0.M4/conf?目錄中:

?cd ../tomcat/apache-tomcat-9.0.0.M4/conf

?打開?tomcat?服務的配置文件?server.xml:

??vi server.xml

?找到如下代碼:

??<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

?將其中的?8080?改成?HTTP?協議的默認端口?80,改后的代碼如下:

??<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" />

11.?進入到?/usr/local/tomcat/apache-tomcat-9.0.0.M4/bin?目錄中:

? cd ../bin/

?

12.?打開?vi catalina.sh?文件:

?在?# OS specific support.?前面加入如下代碼:

??JAVA_HOME=/usr/local/jdk/jdk1.8.0_91

??JRE_HOME=$JAVA_HOME/jre

?鍵入?Esc?并輸入“:wq!”保持并退出;

?

13.啟動?tomcat?服務:

?./startup.sh

?打印如下信息則表明啟動?Tomcat?服務成功:

??Using CATALINA_BASE: ??/usr/local/tomcat/apache-tomcat-9.0.0.M4

??Using CATALINA_HOME: ??/usr/local/tomcat/apache-tomcat-9.0.0.M4

??Using CATALINA_TMPDIR: /usr/local/tomcat/apache-tomcat-9.0.0.M4/temp

??Using JRE_HOME: ???????/usr/local/jdk/jdk1.8.0_91/jre

??Using CLASSPATH: ??????/usr/local/tomcat/apache-tomcat-9.0.0.M4/bin/bootstrap.jar:/usr/local/tomcat/apache-tomcat-9.0.0.M4/bin/tomcat-juli.jar

? ?Tomcat started.

??打開瀏覽器輸入?IP?地址看看吧!如果出現了我們的可愛的“小黃貓”則表明我們的?Tomcat?已提供服務啦!

?

14.?關閉?tomcat?服務:

?./shutdown.sh

?打印如下信息則表明關閉?Tomcat?服務成功:

??Using CATALINA_BASE: ??/usr/local/tomcat/apache-tomcat-9.0.0.M4

??Using CATALINA_HOME: ??/usr/local/tomcat/apache-tomcat-9.0.0.M4

??Using CATALINA_TMPDIR: /usr/local/tomcat/apache-tomcat-9.0.0.M4/temp

??Using JRE_HOME: ???????/usr/local/jdk/jdk1.8.0_91/jre

??Using CLASSPATH: ??????/usr/local/tomcat/apache-tomcat-9.0.0.M4/bin/bootstrap.jar:/usr/local/tomcat/apache-tomcat-9.0.0.M4/bin/tomcat-juli.jar

?注意:不可連續執行多次?./shutdown.sh?命令,多次后報如下錯誤:

??SEVERE: Catalina.stop:

??java.net.ConnectException: Connection refused

???at java.net.PlainSocketImpl.socketConnect(Native Method)

???at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)

???at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)

???at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)

???at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)

???at java.net.Socket.connect(Socket.java:589)

???at java.net.Socket.connect(Socket.java:538)

???at java.net.Socket.<init>(Socket.java:434)

???at java.net.Socket.<init>(Socket.java:211)

???at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:476)

???at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

???at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

???at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

???at java.lang.reflect.Method.invoke(Method.java:498)

???at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:408)

???at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:497)

?

15?將?tomcat9?加入到系統服務列表中:

?進入到?/etc/init.d?目錄中:

??cd /etc/init.d

?創建?tomcat9?服務配置文件:

??vi tomcat9

?將如下代碼加入寫入到?tomcat9?配置文件中:

??# idea - tomcat config start - 2016-05-01

?

??#!/bin/bash

???# description: Tomcat Start Stop Restart

???# processname: tomcat

???# chkconfig: 2345 20 80

???JAVA_HOME=/usr/local/jdk/jdk1.8.0_91/

???export JAVA_HOME

???PATH=$JAVA_HOME/bin:$PATH

???export PATH

???CATALINA_HOME=/usr/local/tomcat/apache-tomcat-9.0.0.M4/

?

???case $1 in

???start)

?????sh $CATALINA_HOME/bin/startup.sh

???;;

???stop)

?????sh $CATALINA_HOME/bin/shutdown.sh

???;;

???restart)

?????sh $CATALINA_HOME/bin/shutdown.sh

?????sh $CATALINA_HOME/bin/startup.sh

???;;

???esac

???exit 0

?

???#chmod 755 tomcat

???#chkconfig --add tomcat

???#chkconfig --level 2345 tomcat on

???#chkconfig --list tomcat

?

??# idea - tomcat config end - 2016-05-01

?鍵入?Esc?并輸入“:wq!”保持并退出;

?其中的注意點是將?JAVA_HOME?和?CATALINA_HOME?變量設置成與我們當前配置相一致的路徑;

?

16.為?tomcat9?分配可執行權限:

? chmod +x tomcat9

?

17.?將?tomcat9?納入到系統的服務列表中,即添加?tomcat9?為系統服務:

?chkconfig --add tomcat9

?

18.?查看當前系統服務都有哪些:

?chkconfig --list

?也可以查看指定的系統服務,如這里我們指定?tomcat9?這個服務:

??chkconfig --list tomcat9

?打印如下信息:

??tomcat9 ????????0:off ??1:off ??2:on ???3:on ???4:on ???5:on ???6:off

?則表明已將?tomcat9?設置為系統服務,2、3、4、5?都為?on?表示可隨系統自動啟動;

?

19?我們可以在任意目錄下執行關閉、啟動、重啟?Tomcat9?服務啦:

?19.1?關閉?tomcat9?服務:

??service tomcat9 stop

?19.2?啟動?tomcat9?服務:

??service tomcat9 start

?19.3?重啟?tomcat9?服務:

??service tomcat9 restart

?

后記:(很重要)

關于Tomcat成功啟動后,外網不能成功訪問的解決:

第一個方面:Linux上啟動防火墻的問題

當下比較流行的linux鏡像是CentOS,所以防火墻也隨之變成了firewall,那么怎么操作這個防火墻呢?

?

#停止firewall

systemctl stop firewalld.service

?

#開啟firewall

systemctl start firewalld.service

?

#禁止firewall開機啟動

systemctl disable firewalld.service

?

#查看默認防火墻狀態(關閉后顯示not running,開啟后顯示running)

firewall-cmd –state

?

但是開啟的時候,可能報這個錯

Failed to start firewalld.service: Unit firewalld.service is masked.

嘗試

systemctl unmask firewalld.service

?

發現,防火墻已經關閉了,經過大量搜索發現,還可能是安全組的問題,經過測試,通了。

那么怎么來配置安全組呢?

1.登陸阿里云

2.進入安全組

?

“控制臺”?->?“云服務器?ECS”?->?選擇云服務器?->?“更多”?->?“安全組配置”

3.配置規則

?

“配置規則”?->?“添加安全組規則”

4.配置8080端口

添加安全組規則

?

步驟三安裝MySQL5.7:

?

1?通過?putty?連接到阿里云?CentOS7?服務器;

?

2?進入到目錄?/usr/local/?中:

cd /usr/local/

?

3?創建目錄?/usr/local/tools,如果有則忽略:

mkdir -p tools

?

4?創建?/usr/local/mysql?目錄,如果已存在則忽略:

mkdir -p mysql

?

5?進入到目錄?/usr/local/tools?中:

cd tools/

?

6?查看系統中是否已安裝?MySQL?服務:

rpm -qa | grep mysql

yum list installed | grep mysql

?

7?如果已安裝則刪除?MySQL?及其依賴的包:

yum -y remove mysql-libs.x86_64

?

8?下載?mysql57-community-release-el7-8.noarch.rpm?的?YUM?源:

wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm

?

9?安裝?mysql57-community-release-el7-8.noarch.rpm:

rpm -ivh mysql57-community-release-el7-8.noarch.rpm

安裝完后,得到如下兩個包:

mysql-community.repo

mysql-community-source.repo

?

10?安裝?MySQL:

yum install mysql-server

遇到疑問的地方,一路?Y?下去即可;

安裝完畢后,在??/var/log/mysqld.log?文件中會自動生成一個隨機的密碼,我們需要先取得這個隨機密碼,以用于登錄?MySQL?服務端:

grep "password" /var/log/mysqld.log(有可能這個初始隨機密碼會沒有)

打印如下內容:

A temporary password is generated for root@localhost: hilX0U!9i3_6

我們復制?root@localhost:?后面的隨機字符串,這個字符串就是?MySQL?在安裝完成后為我們隨機生成的密碼;

?

12?登錄到?MySQL?服務端并更新用戶?root?的密碼:

mysql -u root -philX0U!9i3_6

打印出?MySQL?的版本即表明已登錄;

設置用戶?root?可以在任意?IP?下被訪問:

grant all privileges on *.* to root@"%" identified by "新密碼";

設置用戶?root?可以在本地被訪問:

grant all privileges on *.* to root@"localhost" identified by "新密碼";

刷新權限使之生效:

flush privileges;

更新?MySQL?的用戶?root的密碼:

set password = password('新密碼');

注意:由于?MySQL5.7?采用了密碼強度驗證插件?validate_password,故此我們需要設置一個有一定強度的密碼;

輸入?exit?后用新密碼再次登錄看看吧!

?

13?查看?MySQL?當前都內置了哪些數據庫:

mysql> show databases;

我們發現其內置了如下一些數據庫:

information_schema

mysql ?????????????

performance_schema

sys

?

14?啟動?MySQL?服務:

service mysqld start

?

15?關閉?MySQL?服務:

service mysqld stop

?

16?重啟?MySQL?服務:

service mysqld restart

?

17?查看?MySQL?的狀態:

service mysqld status

?

18?查看?MySQL?的字符集:

mysql> show variables like '%character%';

+--------------------------+----------------------------+

| Variable_name ???????????| Value ?????????????????????|

+--------------------------+----------------------------+

| character_set_client ???| utf8 ?????????????????????|

| character_set_connection | utf8 ?????????????????????|

| character_set_database ?| latin1 ???????????????????|

| character_set_filesystem | binary ???????????????????|

| character_set_results ???| utf8 ?????????????????????|

| character_set_server ???| latin1 ???????????????????|

| character_set_system ???| utf8 ?????????????????????|

| character_sets_dir ?????| /usr/share/mysql/charsets/ |

+--------------------------+----------------------------+

8 rows in set (0.01 sec)

查看指定的數據庫中指定數據表的字符集,如查看?mysql?數據庫中?servers?表的字符集:

??show table status from mysql like '%servers%';

查看指定數據庫中指定表的全部列的字符集,如查看?mysql?數據庫中?servers?表的全部的列的字符集:

show full columns from servers;

?

19?設置?MySQL?的字符集為?UTF-8:

打開?/etc?目錄下的?my.cnf?文件(此文件是?MySQL?的主配置文件):

/etc/my.cnf

在?[mysqld]?前添加如下代碼:

[client]

default-character-set=utf8

在?[mysqld]?后添加如下代碼:

character_set_server=utf8

再次查看字符集:

mysql> show variables like '%character%';

+--------------------------+----------------------------+

| Variable_name ???????????| Value ?????????????????????|

+--------------------------+----------------------------+

| character_set_client ???| utf8 ?????????????????????|

| character_set_connection | utf8 ?????????????????????|

| character_set_database ?| utf8 ?????????????????????|

| character_set_filesystem | binary ???????????????????|

| character_set_results ???| utf8 ?????????????????????|

| character_set_server ???| utf8 ?????????????????????|

| character_set_system ???| utf8 ?????????????????????|

| character_sets_dir ?????| /usr/share/mysql/charsets/ |

+--------------------------+----------------------------+

8 rows in set (0.01 sec)

?

20 /var/lib/mysql?是存放數據庫文件的目錄;

?

21 /var/log?目錄下的?mysqld.log?文件記錄?MySQL?的日志;

?

22 MySQL?采用的?TCP/IP?協議傳輸數據,默認端口號為?3306,我們可以通過如下命令查看:

netstat -anp

?

23?忘記密碼時,可用如下方法重置:

# service mysqld stop

# mysqld_safe --user=root --skip-grant-tables --skip-networking &

# mysql -u root

mysql> use mysql;

mysql> update user set password=password("new_password") where user="root";

mysql> flush privileges;

?

轉載來源:https://www.cnblogs.com/yangxiansen/p/7860001.html

轉載于:https://www.cnblogs.com/peijyStudy/p/10512974.html

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的Linux云服务器下Tomcat部署超详细的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。