LoginSignup
1

More than 1 year has passed since last update.

posted at

SpringBootアプリケーション(Jar)をCentOS7にデプロイ

はじめに

SpringBootは実行可能ファイルとして jar 形式と war 形式の2種類のファイルを作成できます。
jar 形式はTomcatが組み込まれており、単体で実行可能です。
war 形式はTomcatがインストールされた環境にデプロイし、実行する必要があります。
今回はjarファイルをCentOS7にデプロイする手順を記載します。

前提

開発環境

IDE:eclipse(4.15.0)
Java:11
ビルドツール:Maven

サーバー環境

OS:CentOS7(仮想マシン)
Java:11
Apache:2.4.6

Jarファイル作成

プロジェクト上で右クリック > [実行] > [Maven install] を選択します。
完了後、[プロジェクトフォルダ] > [target]に「XXX.jar」ファイルが作成されます。
※ここではプロジェクト名「demo」のjarファイル作成
jar作成.png

Apache設定

ここでは2つの設定を行います。
1. プロキシ有効化
2. リバースプロキシ設定

プロキシ有効化

Apacheのプロキシを有効にするには mod_proxy モジュールが有効になっている必要があります。
以下の手順で確認します。
まず、サーバー側の「/etc/httpd/conf/httpd.conf」を開きます。
Tera Termなどでコマンドを実行し、以下を確認してください。

httpd.conf
$ cat /etc/httpd/conf/httpd.conf
(中略)
Include conf.modules.d/*.conf
(中略)

「conf.modules.d」以下の「.conf」ファイルを読み込みしています。
次に、「/etc/httpd/conf.modules.d/00-proxy.conf」を開きます。

httpd.conf
$ cat /etc/httpd/conf.modules.d/00-proxy.conf
(中略)
LoadModule proxy_module modules/mod_proxy.so
(中略)

「mod_proxy」がロードされていることが確認できればオッケーです。

リバースプロキシ設定

「/etc/httpd/conf.d」以下に任意の名前の設定ファイルを追加します。
ここでは「httpd-proxy.conf」とします。
以下のように記載してください。

httpd-proxy.conf
ProxyPreserveHost On
ProxyRequests Off
<Proxy *>
 Require all granted
</Proxy>
ProxyPass / http://127.0.0.1:8080/
ProxyPassReverse / http://127.0.0.1:8080/

Apacheの再起動をします。

再起動
# service httpd restart

デプロイ

jarファイルをサーバーにアップロードします。
任意のディレクトリにファイルをアップロードしてください。
※ここでは「/opt/bin」にアップロードすることとします。

アップロード
// ホストマシン側でコマンドを実行する
$ scp [jarファイルパス][ユーザー名]@[アップロード先IPアドレス]:[アップロード先パス]

(例)
$ scp C:\eclipse\workspace\demo\target\demo-0.0.1-SNAPSHOT.jar root@192.168.34.11:/opt/bin

起動

以下のコマンドでjarを起動します。

起動
// サーバー側でコマンド実行する
java -jar [jarファイルパス]

(例)
java -jar /opt/bin/demo-0.0.1-SNAPSHOT.jar

起動したら、ホストマシンのブラウザから以下のURLにアクセスしてください。
URL:http://localhost:8080/

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
1