本文是鋼哥的Oracle APEX系列文章中的其中一篇,完整 Oracle APEX 系列文章如下:
- Oracle APEX 系列文章1:Oracle APEX, 讓你秒變全棧開發的黑科技
- Oracle APEX 系列文章2:在阿里云上打造屬于你自己的APEX完整開發環境 (準備工作)
- Oracle APEX 系列文章3:在阿里云上打造屬于你自己的APEX完整開發環境 (安裝CentOS, Tomcat, Nginx)
- Oracle APEX 系列文章4:在阿里云上打造屬于你自己的APEX完整開發環境 (安裝XE, ORDS, APEX)
- Oracle APEX 系列文章5:在阿里云上打造屬于你自己的APEX完整開發環境 (進一步優化)
- Oracle APEX 系列文章6:Oracle APEX 到底適不適合企業環境?
引言
在這一章節里,我們將一起動手安裝CentOS 7操作系統、Tomcat以及Nginx,并為后面的安裝做一些初始化設置。
安裝配置CentOS 7
在阿里云控制臺購買并啟動CentOS
之前說過,我們選擇阿里云作為云提供商。注冊步驟就不展開了,大家可以到阿里云官網進行注冊。注冊完賬號并成功登陸控制臺,點擊左側導航菜單云服務器 ECS
,再點擊創建實例
按鈕,如下圖所示:
系統提示創建成功,返回管理控制臺
稍等片刻,等待系統狀態變為運行中
即表示系統已創建完畢。
用你習慣的ssh工具(如iTerm2、PuTTY等)登錄測試一下,第一次會詢問是否將該IP地址加到可信任站點名單,直接yes
后輸入剛才設置的root
密碼,如果看到下面的結果,就表示CentOS系統安裝完畢。
升級CentOS系統包
yum upgrade -y
安裝必要的工具包
yum install java-1.8.0-openjdk.x86_64 java-1.8.0-openjdk-devel.x86_64 libaio flex bc mc net-tools.x86_64 htop iotop iftop unzip wget epel-release vim rlwrap -y
安裝完成后,執行java -version
驗證jdk是否安裝成功。
同步網絡時間
systemctl start chronyd
systemctl enable chronyd
安裝配置Tomcat服務器
鋼哥提示:Tomcat安裝這部分是個大坑。由于最新的ORDS 18需要Tomcat 8.5以上版本,且jdk 1.8以上,而目前網上的教程都是用yum直接安裝Tomcat(版本是7的),導致版本不兼容,后面配置ORDS會發生錯誤,所以這里不要采用yum安裝Tomcat,而是手動安裝。
添加tomcat用戶和用戶組
如果之前安裝過tomcat,對應的用戶和組已經存在的話,會提示個警告,忽略即可。
可以用yum -y remove tomcat*
來卸載之前yum安裝的tomcat。
## 創建tomcat安裝目錄
mkdir -p /u01/tomcat
groupadd tomcat
useradd -s /bin/false -g tomcat -d /u01/tomcat tomcat
下載 Tomcat 8.5 以上安裝包
到 Apache Tomcat 官網下載Tomcat 8.5以上安裝包,本次下載的Tomcat版本是8.5.30的,你可以自行選擇,只要高于8.5版本即可。
cd /u01/media
wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-8/v8.5.30/bin/apache-tomcat-8.5.30.zip
安裝 Tomcat 8.5
## 先將下載的zip文件解壓縮
unzip apache-tomcat-8.5.30.zip
## 將解壓縮后的文件挪到安裝目錄中
mv apache-tomcat-8.5.30/* /u01/tomcat
## 授權
chmod -Rf 755 /u01/tomcat/bin/
chown -hR tomcat:tomcat /u01/tomcat
新增一個tomcat.service
文件
你可以像我一樣直接用vim
命令新增文件,然后添加內容。不熟悉vim命令的請移步這里:有關vi(vim)的常用命令。
或者在本地編輯好,再用ftp工具上傳到服務器/etc/systemd/system/
目錄中。
vim /etc/systemd/system/tomcat.service
tomcat.service
文件的內容如下:
[Unit]
Description=Apache Tomcat 8 Servlet Container
After=syslog.target network.target
[Service]
User=tomcat
Group=tomcat
Type=forking
Environment=CATALINA_PID=/u01/tomcat/tomcat.pid
Environment=CATALINA_HOME=/u01/tomcat
Environment=CATALINA_BASE=/u01/tomcat
ExecStart=/u01/tomcat/bin/startup.sh
ExecStop=/u01/tomcat/bin/shutdown.sh
Restart=on-failure
[Install]
WantedBy=multi-user.target
將 tomcat 服務設置成自啟動。
systemctl daemon-reload
systemctl start tomcat
systemctl enable tomcat
檢查 tomcat 服務是否正常啟動
systemctl status tomcat
如果如下圖所示,證明已正常啟動。
如果想重啟Tomcat,可以執行
systemctl restart tomcat
更多有關在CentOS 7上安裝 tomcat 8.5 的信息可以參考這里:How to Install Apache Tomcat 8.5 on CentOS 7.3
開啟8080端口
阿里云的服務器安全組類似CentOS的防火墻,可以配置到多臺ECS服務器上,管理上更加靈活。
目前我們的ECS啟用了如下端口:
- 80:http端口;
- 443:https端口;
- 22:ssh端口;
- 3389:Windows遠程桌面端口(我們用不上);
點擊快速創建規則
按鈕新增一條安全組規則:
這里我們要新增一條安全組規則,把
8080
端口開放出來,方便我們測試Tomcat是否安裝成功。后面設置好 Nginx 以后,所有http請求會通過Nginx轉發到Tomcat的8080端口上,這時再把8080端口關閉掉,讓系統更加安全。
測試Tomcat
打開瀏覽器,訪問http://47.100.207.171:8080/
(把IP地址換成你自己的),如果能看到下面的頁面,證明Tomcat安裝完畢。
Tomcat重要目錄及文件
-
/u01/tomcat
Tomcat默認的安裝目錄; -
/u01/tomcat/conf/server.xml
Tomcat的主配置文件,包含service, connectors, engine, realm, valve, hosts等組件; -
/u01/tomcat/conf/web.xml
遵循Servlet規范標準的配置文件,用于配置servlet,并為所有的Web應用程序提供包括MIME映射等默認配置信息; -
/u01/tomcat/conf/tomcat-user.xml
Realm認證時用到的相關角色、用戶和密碼等信息;Tomcat自帶的manager默認情況下會用到此文件;在Tomcat中添加/刪除用戶,為用戶指定角色等將通過編輯此文件實現; -
/u01/tomcat/conf/catalina.policy
java相關的安全策略配置文件,在系統資源級別上提供訪問控制的能力; -
/u01/tomcat/conf/catalina.properties
Tomcat內部package的定義及訪問相關的控制,也包括對通過類裝載器裝載的內容的控制;Tomcat在啟動時會事先讀取此文件的相關設置; -
/u01/tomcat/conf/logging.properties
Tomcat通過自己內部實現的JAVA日志記錄器來記錄操作相關的日志,此文件即為日志記錄器相關的配置信息,可以用來定義日志記錄的組件級別以及日志文件的存在位置等; -
/u01/tomcat/conf/context.xml
所有host的默認配置信息;
安裝配置Nginx
安裝Nginx
yum install nginx -y
設置Nginx以便下次自啟動
systemctl start nginx
systemctl enable nginx
檢查Nginx是否已啟動
systemctl status nginx
測試Nginx
打開瀏覽器,訪問http://106.14.172.85
(把IP地址換成你自己的),如果能看到下面的頁面,證明Nginx安裝完畢。
Nginx重要目錄及文件
-
/etc/nginx
Nginx默認的安裝目錄; -
/etc/nginx/nginx.conf
Nginx默認全局配置文件; -
/etc/nginx/conf.d/
Nginx默認子配置文件目錄; -
/usr/share/nginx/html/
Nginx默認html根目錄;
總結
本文詳細介紹了如何在阿里云上購買并啟動一個CentOS 7的新實例,以及如何安裝、配置和測試Tomcat和Nginx。下一篇文章將著重講解如何安裝配置Oracle數據庫(XE)、Oracle APEX以及ORDS,如有遺漏或不準確的地方還請大家指正,謝謝!