在AWS-Ubuntu14.04上架設Java Web+MariaDB
- author: ImL1s
- email: iml1s@outlook.com
參考鏈結
- How To Import and Export Databases in MySQL or MariaDB
- How To Install Apache Tomcat 8 on Ubuntu 14.04
- How to Install and Configure Tomcat 8 on Ubuntu 16.04
- 使用update-alternatives命令进行版本的切换
- AWS如何設定Instance的rule(開放22、8080端口)
- MySql(MariaDB)如何導入.sql資料
Linux Tomcat安裝
-
更新包管理器的軟體資料庫
> sudo apt-get update
-
根據專案使用的JDK版本下載JDK
// 這裡安裝的版本的是openJDK7 > sudo apt-get install default-jdk
-
新增使用者群組
> sudo groupadd tomcat
-
新增使用者
// -s 使用者啟用的shell類型(註1.) | -g 使用者的群組 | -d 使用者的home(~)目錄 > sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
-
下載專案使用的tomcat版本,以下為8.0版本
> cd ~ > wget http://mirror.sdunix.com/apache/tomcat/tomcat-8/v8.0.23/bin/apache-tomcat-8.0.23.tar.gz
-
新建tomcat目錄,並且將tomcat壓縮檔放置該目錄
> sudo mkdir /opt/tomcat > sudo tar xvf apache-tomcat-8*tar.gz -C /opt/tomcat --strip-components=1
-
變更tomcat目錄權限(註2.),conf為tomcat的配置檔案目錄
> cd /opt/tomcat > sudo chgrp -R tomcat conf > sudo chmod g+rwx conf > sudo chmod g+r conf/*
-
變更文件的擁有者
> sudo chown -R tomcat work/ temp/ logs/
-
顯示當前JDK路徑(註3.)
> sudo update-alternatives --config java ubuntu@ip-172-31-40-55:/opt/tomcat$ sudo update-alternatives --config java There is only one alternative in link group java (providing /usr/bin/java): /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java Nothing to configure. // 注意每個人的路徑不一定相同,我這裡是 /usr/lib/jvm/java-7-openjdk-amd64/jre
-
新增init配置upstart script(註4.)
> sudo nano /etc/init/tomcat.conf
-
使用上上一步驟的JDK,配置upstart script(註4.)
description "Tomcat Server" start on runlevel [2345] stop on runlevel [!2345] respawn respawn limit 10 5 setuid tomcat setgid tomcat env JAVA_HOME={**上上一步驟的JDK,EX: /usr/lib/jvm/java-7-openjdk-amd64/jre**} env CATALINA_HOME=/opt/tomcat # Modify these options as needed env JAVA_OPTS="-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom" env CATALINA_OPTS="-Xms512M -Xmx1024M -server -XX:+UseParallelGC" exec $CATALINA_HOME/bin/catalina.sh run # cleanup temp directory after stop post-stop script rm -rf $CATALINA_HOME/temp/* end script
-
重新讀取upstart配置檔
> sudo initctl reload-configuration
-
tomcat配置完成,在瀏覽器中打開8080端口,看看有沒有tomcat預設頁面
http://server_IP_address:8080
Linux MariaDB安裝
-
安裝mariaDB
> sudo apt-get update > sudo apt-get install mariadb-server
安裝時會要求設定密碼,根據java專案中的設定
-
登入mysql
> mysql -u root -p
-
接下來導入之前的db資料,首先新建一個db
> CREATE DATABASE new_database; Query OK, 1 row affected (0.00 sec)
-
然後將之前的資料導入
mysql -u username -p new_database < data-dump.sql
導入完成
AWS配置
- 打開22 port(ssh使用的端口)
- 打開8080 port(tomcat使用的端口)
- 如何設定可以看看參考鏈結
步驟
- 將開發機上的java專案打包成war檔案
- 將開發機上的db資料export成sql檔案
- 將sql檔匯入Linux下的mariaDB
- 將java專案放入Linux下的tomcat/webapps/
- 打開AWS下的port
- 有時候可能要打開linux防火牆
註解
useradd -s /bin/flase 所謂 /bin/false 就是指該使用者無法使用任何 Shell 功能,因此也就無法與系統進行溝通。如此一來,此使用者便無法使用 telnet 或 ftp 來登入系統,但仍可以收發電子郵件,這是一個企業中經常使用的方式,尤其是免費提供電子郵件信箱的組織中更為重要
sudo chgrp -R {{群組名稱}} {{目錄名稱}} chgrp為改變文件or目錄所屬群組 -R為遞歸處理
sudo update-alternatives --config java 如果當前jdk版本只有一個,那就會顯示目前java目錄
upstart script,為upstart系統的腳本,upstart系統為Ubuntu上的一個新型的init系統