2018年2月2日 星期五

在AWS-Ubuntu14.04上架設Java Web+MariaDB

參考鏈結

Linux Tomcat安裝

  1. 更新包管理器的軟體資料庫

    > sudo apt-get update
    
  2. 根據專案使用的JDK版本下載JDK

    // 這裡安裝的版本的是openJDK7
    > sudo apt-get install default-jdk
    
  3. 新增使用者群組

    > sudo groupadd tomcat
    
  4. 新增使用者

    // -s 使用者啟用的shell類型(註1.) | -g 使用者的群組 | -d 使用者的home(~)目錄
    > sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
    
  5. 下載專案使用的tomcat版本,以下為8.0版本

    > cd ~
    > wget http://mirror.sdunix.com/apache/tomcat/tomcat-8/v8.0.23/bin/apache-tomcat-8.0.23.tar.gz
    
  6. 新建tomcat目錄,並且將tomcat壓縮檔放置該目錄

    > sudo mkdir /opt/tomcat
    > sudo tar xvf apache-tomcat-8*tar.gz -C /opt/tomcat --strip-components=1
    
  7. 變更tomcat目錄權限(註2.),conf為tomcat的配置檔案目錄

    > cd /opt/tomcat
    > sudo chgrp -R tomcat conf
    > sudo chmod g+rwx conf
    > sudo chmod g+r conf/*
    
  8. 變更文件的擁有者

    > sudo chown -R tomcat work/ temp/ logs/
    
  9. 顯示當前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
    
  10. 新增init配置upstart script(註4.)

    > sudo nano /etc/init/tomcat.conf
    
  11. 使用上上一步驟的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
    
  12. 重新讀取upstart配置檔

    > sudo initctl reload-configuration
    
  13. tomcat配置完成,在瀏覽器中打開8080端口,看看有沒有tomcat預設頁面

    http://server_IP_address:8080
    

Linux MariaDB安裝

  1. 安裝mariaDB

    > sudo apt-get update
    > sudo apt-get install mariadb-server
    
  2. 安裝時會要求設定密碼,根據java專案中的設定

  3. 登入mysql

    > mysql -u root -p
    
  4. 接下來導入之前的db資料,首先新建一個db

    > CREATE DATABASE new_database;
    Query OK, 1 row affected (0.00 sec)
    
  5. 然後將之前的資料導入

    mysql -u username -p new_database < data-dump.sql
    
  6. 導入完成

AWS配置

  • 打開22 port(ssh使用的端口)
  • 打開8080 port(tomcat使用的端口)
  • 如何設定可以看看參考鏈結

步驟

  1. 將開發機上的java專案打包成war檔案
  2. 將開發機上的db資料export成sql檔案
  3. 將sql檔匯入Linux下的mariaDB
  4. 將java專案放入Linux下的tomcat/webapps/
  5. 打開AWS下的port
  6. 有時候可能要打開linux防火牆

註解

  1. useradd -s /bin/flase 所謂 /bin/false 就是指該使用者無法使用任何 Shell 功能,因此也就無法與系統進行溝通。如此一來,此使用者便無法使用 telnet 或 ftp 來登入系統,但仍可以收發電子郵件,這是一個企業中經常使用的方式,尤其是免費提供電子郵件信箱的組織中更為重要

  2. sudo chgrp -R {{群組名稱}} {{目錄名稱}} chgrp為改變文件or目錄所屬群組 -R為遞歸處理

  3. sudo update-alternatives --config java 如果當前jdk版本只有一個,那就會顯示目前java目錄

  4. upstart script,為upstart系統的腳本,upstart系統為Ubuntu上的一個新型的init系統

沒有留言:

張貼留言