ぽれいんのブログ

エンジニアになるために覚えたことを日記に付けます。

EC2でknowledgeアプリを構築する ①

はじめに

インフラエンジニア初学者のぽれいんと申します。

転職する前はプログラミングスクールにて主にHTML、CSSRubyMySQL等について学びました。

※このブログでは自分が後々、見返すことができるようにまとめることを目的としていますが、もし需要があるようでしたら是非ともご覧ください。

<前回の記事>

porain.hatenablog.com

↑↑まだ見ていない方はこちらから↑↑

 

 

 

 

本日のゴール

本日する作業のイメージ図です。

f:id:porain:20210729175645p:plain

イメージ

サーバにログイン/rootにスイッチ

rootユーザになる。

sudo su -

/optに移動。

cd /opt

JDKインストール

JDKをダウンロードする

wget https://corretto.aws/downloads/latest/amazon-corretto-8-x64-linux-jdk.tar.gz

※バージョンは最新のものに置き換えてください。

解凍する

tar zxf amazon-corretto-8-x64-linux-jdk.tar.gz

javaへのパスが通るようにする

vi /root/.bash_profile
以下のように変更
--------------------ここから------------------------------
変更前
PATH=$PATH:$HOME/bin
変更後
PATH=$PATH:$HOME/bin:/opt/amazon-corretto-8.302.08.1-linux-x64/bin
--------------------ここまで------------------------------

バージョンは最新のものに置き換えてください。(ls で確認)

修正したbash_profileをソースコマンドで再読み込みする

. /root/.bash_profile

Tomcatインストール

javaバージョン

java -version

-bash: java: command not foundと表示される場合、Javaが入っていないのでダウンロードする

yum install -y java-1.8.0-openjdk-devel.x86_64

バージョンは最新のものに置き換えてください。

tomcatユーザを追加する

useradd -s /sbin/nologin tomcat

Tomcatをダウンロードする

wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.50/bin/apache-tomcat-9.0.50.tar.gz

解凍する

tar zxf apache-tomcat-9.0.50.tar.gz
cd /usr/local
mv /opt/apache-tomcat-9.0.50 ./

所有者とグループをtomcatにする

chown -R tomcat:tomcat apache-tomcat-9.0.50

シンボリックリンクを張る

ln -s apache-tomcat-9.0.50 tomcat

この時点でllコマンドで以下のようになっていればOK!

total 0
drwxr-xr-x 9 tomcat tomcat 220 Jul 29 09:42 apache-tomcat-9.0.50
drwxr-xr-x 2 root root 6 Apr 9 2019 bin
drwxr-xr-x 2 root root 6 Apr 9 2019 etc
drwxr-xr-x 2 root root 6 Apr 9 2019 games
drwxr-xr-x 2 root root 6 Apr 9 2019 include
drwxr-xr-x 2 root root 6 Apr 9 2019 lib
drwxr-xr-x 2 root root 6 Apr 9 2019 lib64
drwxr-xr-x 2 root root 6 Apr 9 2019 libexec
drwxr-xr-x 2 root root 6 Apr 9 2019 sbin
drwxr-xr-x 5 root root 49 Jul 6 17:24 share
drwxr-xr-x 2 root root 6 Apr 9 2019 src
lrwxrwxrwx 1 root root 20 Jul 29 09:42 tomcat -> apache-tomcat-9.0.50

setenvを新規作成する

vi /usr/local/tomcat/bin/setenv.sh
---ここから--------------------------------------
#!/bin/sh
CATALINA_HOME=/usr/local/tomcat
JAVA_HOME=/opt/amazon-corretto-8.302.08.1-linux-x64
JAVA_OPTS="-Xms128m -Xmx512m"
---ここまで--------------------------------------

バージョンは最新のものに置き換えてください。

server.xmlを設定する

vi /usr/local/tomcat/conf/server.xml
以下のように変更。(コマンドモードで/unpackで検索できます。)
--------------------------------------------
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
          ↓↓
<Host name="localhost" appBase="webapps"
unpackWARs="false" autoDeploy="false">
--------------------------------------------

tomcat.serviceのパーミッションを変更する

vi /etc/systemd/system/tomcat.service
-----ここから-----------------------------
[Unit]
Description=Apache Tomcat 9
After=network.target

[Service]
User=tomcat
Group=tomcat
Type=oneshot
PIDFile=/usr/local/tomcat/tomcat.pid
RemainAfterExit=yes

ExecStart=/usr/local/tomcat/bin/startup.sh
ExecStop=/usr/local/tomcat/bin/shutdown.sh
ExecReStart=/usr/local/tomcat/bin/shutdown.sh;/usr/local/tomcat/bin/startup.sh

[Install]
WantedBy=multi-user.target
------ここまで----------------------------

パーミッションを変更

chmod 755 /etc/systemd/system/tomcat.service

自動起動を有効化して、tomcatを起動する。

systemctl enable tomcat
systemctl start tomcat

Apacheのインストール

yumhttpdをインストール

yum install  -y httpd

デフォルト設定をorgで保存し、コメントアウト行を削除する

cd /etc/httpd/conf
mv httpd.conf httpd.conf.org
grep -v -e '^#' -e ' #' httpd.conf.org > httpd.conf

※「'     #'」の間にあるのは、半角スペース4つ

proxy設定を追記

vi httpd.conf
一番下に下記を追記
---ここから--------------------------------------
ProxyRequests Off
ProxyPass /knowledge http://127.0.0.1:8080/knowledge
---ここまで--------------------------------------

自動起動を有効化して、httpdを起動する。

systemctl enable httpd
systemctl start httpd

アクセス

http://グローバルIP

以上で、アプリケーションサーバの起動が完了致しました。

長くなりましたので次回の記事で

Javaアプリケーションの配置、SQLの配置を行います!!

 

以下、次回記事のリンク

porain.hatenablog.com