關(guān)于微柳鏡像使用
鏡像名字:JAVA環(huán)境(CentOS7.3 Nginx Tomcat8 JDK)
鏡像市場地址:點(diǎn)擊這里進(jìn)入
JAVA環(huán)境鏡像使用手冊:點(diǎn)擊進(jìn)入
視頻教程:百度云在線播放與下載
鏡像軟件詳細(xì)列表:
- Nginx1.12.0
- Tomcat7.0.77或8.0.43
- JDK1.8.0_121、1.7.0_80、1.6.0_45
- MySQL5.6.36
- Redis3.2.8
- Memcached1.4.36
- Jemalloc4.5.0
- Pure-FTPd1.0.45
源碼安裝目錄:
Nginx:/usr/local/nginx
tomcat:/usr/local/tomcat
JDK:/usr/java
MySQL:/usr/local/mysql
Pureftpd:/usr/local/pureftpd
Redis: /usr/local/redis
Memcached:/usr/local/memcached
數(shù)據(jù)存儲(chǔ)目錄:
數(shù)據(jù)庫(MySQL):/data/mysql
網(wǎng)站根目錄:/data/wwwroot/www.example.com 【添加虛擬主機(jī)會(huì)自動(dòng)創(chuàng)建這個(gè)目錄】
Web訪問日志:/data/wwwlogs
默認(rèn)ip直接訪問內(nèi)容對應(yīng)根目錄:/data/wwwroot/default 【該目錄包含首頁demo等文件,目錄里面文件可刪除,目錄不能刪除】
首頁demo:http://公網(wǎng)IP
參數(shù)優(yōu)化
1. 初始化磁盤
新安裝的系統(tǒng)可以省略此步,也就是恢復(fù)到鏡像的初始狀態(tài)。在后續(xù)使用過程中出現(xiàn)問題,均可以初始化磁盤之后再做后續(xù)步驟。
2. 啟動(dòng)優(yōu)化系統(tǒng) [這一步是根據(jù)自己的系統(tǒng)使用腳本自動(dòng)優(yōu)化,強(qiáng)烈建議操作一次]
cd /root/oneinstack #必須進(jìn)入oneinstack目錄下執(zhí)行
./optimize.sh #請勿bash ./optimize.sh(或者sh)這樣執(zhí)行
注意:
可能需要等待1分鐘,請勿中斷
此腳本會(huì)根據(jù)系統(tǒng)配置,自動(dòng)優(yōu)化 Nginx、MySQL、JVM等參數(shù)
顯示結(jié)果:
3. JDK版本切換
cd /root/oneinstack
./change_jdk_version.sh
圖示:
4. MySQL數(shù)據(jù)庫管理
- 顯示數(shù)據(jù)庫root默認(rèn)密碼:
cd /root/oneinstack
grep dbrootpwd options.conf #顯示數(shù)據(jù)庫root密碼
- 數(shù)據(jù)庫root密碼重置
cd /root/oneinstack
./reset_db_root_password.sh
- 創(chuàng)建數(shù)據(jù)庫用戶
為了安全我們通常給每一個(gè)網(wǎng)站程序建立唯一的數(shù)據(jù)庫連接帳號(hào)(帳號(hào)名不能為root)。
如:添加一個(gè)用戶名為db_user,密碼為db_pass,授權(quán)為本機(jī)localhost對db_name數(shù)據(jù)庫所有權(quán)限,命令如下
mysql -uroot –p
Enter password: #輸入數(shù)據(jù)庫的root密碼,默認(rèn)不顯示密碼
MySQL [(none)]> grant all privileges on db_name.* to db_user@’localhost’ identified by ‘db_pass’; #授權(quán)語句,特別注意有分號(hào)
MySQL [(none)]> flush privileges; #權(quán)限立即生效
MySQL [(none)]> exit; #退出數(shù)據(jù)庫控制臺(tái),特別注意有分號(hào).
圖示:
- 配置MySQL遠(yuǎn)程連接
如果需要遠(yuǎn)程連接數(shù)據(jù)庫,需要如下操作(缺一不可):
a. 打開iptables 3306端口
iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT // 添加規(guī)則
service iptables save // 保存iptables規(guī)則
圖示:
b. 數(shù)據(jù)庫授權(quán)
使用參考創(chuàng)建數(shù)據(jù)庫用戶的步驟。
5. 管理虛擬主機(jī)
- 添加虛擬主機(jī)
cd /root/oneinstack
./vhost.sh
圖示:
說明:
- 上圖中
directory為網(wǎng)站根目錄,腳本執(zhí)行后會(huì)自動(dòng)創(chuàng)建,部署網(wǎng)站時(shí)請將代碼上傳到該目錄。目錄、子目錄和文件權(quán)限都為:www - 對應(yīng)Nginx配置文件路徑:
/usr/local/nginx/conf/vhost/demo.oneinstack.com.conf
demo.oneinstack.com為綁定的域名
- 對應(yīng)Tomcat配置文件路徑:
/usr/local/tomcat/conf/vhost/demo.oneinstack.com.xml
(demo.oneinstack.com為綁定的域名)
- 刪除虛擬主機(jī):
cd /root/oneinstack
./vhost.sh del
圖示
6. 如何管理FTP賬號(hào)
cd /root/oneinstack
./pureftpd_vhost.sh
圖示:
7. 備份管理
設(shè)置備份參數(shù)
cd /root/oneinstack
./backup_setup.sh
圖示:
立即備份
cd /root/oneinstack
./backup.sh
設(shè)置備份計(jì)劃任務(wù),自動(dòng)定時(shí)備份
如:每天凌晨一點(diǎn)備份 [注:下面命令請勿重復(fù)執(zhí)行]
echo '0 1 * * * cd ~/oneinstack;./backup.sh > /dev/null 2>&1 & ' >> /var/spool/cron/root
查看本地備份
ls -l /data/backup
圖示:
查看阿里云OSS
登陸阿里云管理控制臺(tái),地址:點(diǎn)此查看
圖示:
8. 如何管理服務(wù)
- Nginx:
service nginx {start|stop|status|restart|reload|configtest}
注意:更改Nginx配置文件,強(qiáng)烈建議reloadTomcat:
service tomcat {start|stop|restart|status}
- MySQL:
service mysqld {start|stop|restart|reload|status}
- Pure-Ftpd:
service pureftpd {start|stop|restart|status}
- Redis:
service redis-server {start|stop|status|restart|reload}
Memcached:
service memcached {start|stop|status|restart|reload}
9. 如何升級(jí)版本
cd /root/oneinstack
./upgrade.sh
圖示:
10.其它管理
如何添加附加組件
cd /root/oneinstack
./addons.sh #注:支持安裝、卸載功能
圖示:
如何卸載
??可單獨(dú)卸載某些項(xiàng),如數(shù)據(jù)庫用RDS,可單獨(dú)卸載數(shù)據(jù)庫
cd /root/oneinstack
./uninstall.sh #特別注意備份數(shù)據(jù)
圖示:
部署一個(gè)JavaWeb 網(wǎng)站到服務(wù)器
通過ftp上傳代碼不需要修改權(quán)限,默認(rèn)已經(jīng)是www;在服務(wù)器里面下載代碼必須修改網(wǎng)站根目錄及子、目錄文件權(quán)限都為www;如網(wǎng)站權(quán)限出現(xiàn)問題,請參考下面[關(guān)于網(wǎng)站根目錄權(quán)限]的步驟。
圖示:
訪問http://demo.oneinstack.com,輸入數(shù)據(jù)庫地址(localhost), 用戶名(root),密碼(數(shù)據(jù)庫root密碼),完成
Java應(yīng)用部署說明
默認(rèn)鏡像是做了動(dòng)靜分離,即nginx處理靜態(tài)資源(jss、ccc、圖片等),其余的交給tomcat處理。
默認(rèn)(未綁定域名)對應(yīng)網(wǎng)站根目錄/data/wwwroot/default(不是webapps),部署代碼時(shí)建議將war包解壓(比如example.war,解壓命令:jar xf example.war ,注意權(quán)限必須為www),將其中代碼放到對應(yīng)網(wǎng)站根目錄。
? 如果上傳代碼之后目錄結(jié)構(gòu)為:/data/wwwroot/default/WEB-INF,訪問地址為:http://IP
? 如果上傳代碼之后目錄結(jié)構(gòu)為:/data/wwwroot/default/example/WEB-INF,訪問網(wǎng)站地址為:http://IP/example。
注意:
- war包也可以不解壓即上傳到對應(yīng)網(wǎng)站根目錄,但必須注意訪問路徑和靜態(tài)資源目錄問題。如果訪問網(wǎng)站時(shí),靜態(tài)資源加載不了,可能是原因是做了動(dòng)靜分離靜態(tài)資源直接有nginx處理,請確認(rèn)nginx是否能找到相關(guān)靜態(tài)資源(nginx網(wǎng)站根目錄:
/data/wwwroot/default) - 如果vhost.sh綁定了域名,如
www.example.com,工具會(huì)自動(dòng)生成對應(yīng)根目錄:/data/wwwroot/www.example.com,請將代碼放入此目錄。 - Tomcat參數(shù)請修改:
/usr/local/tomcat/bin/setenv.sh
關(guān)于網(wǎng)站根目錄權(quán)限
網(wǎng)站根目錄權(quán)限遵循:
文件644,
文件夾755,
權(quán)限用戶和用戶組www
如出現(xiàn)文件權(quán)限問題時(shí),請執(zhí)行下面3條命令:
chown -R www.www /data/wwwroot/
find /data/wwwroot/ -type d -exec chmod 755 {} \;
find /data/wwwroot/ -type f -exec chmod 644 {} \;
關(guān)于Redis、Memcached
Redis默認(rèn)端口:6379
Memcached默認(rèn)端口:11211
默認(rèn)監(jiān)聽地址:127.0.0.1
如果增加Redis最大內(nèi)存大小?
vi /usr/local/redis/etc/redis.conf
maxmemory 1024000000 #單位字節(jié),默認(rèn)1G,可調(diào)整
service redis-server restart #重啟生效
如何增加Memcached最大內(nèi)存大小?
vi /etc/init.d/memcachedCACHESIZE=256 #單位M,默認(rèn)256M,可調(diào)整
service memcached restart #重啟生效
更改Redis監(jiān)聽端口
vi /usr/local/redis/etc/redis.conf
bind 127.0.0.1 #改成bind 0.0.0.0,保存
service redis-server restart #重啟生效
更改Memcached監(jiān)聽端口
vi /etc/init.d/memcached
OPTIONS="-l 127.0.0.1" 改成OPTIONS="", 保存
service memcached restart #重啟生效
關(guān)于iptables防火墻
默認(rèn)情況下開通22(ssh)80、443(Nginx) 21、20000:30000(FTP)
其它端口都拒絕,如下需要允許其它端口,請如下操作(如開啟8080端口)
iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT
service iptables save #保存iptables規(guī)則
圖示:














