LoginSignup
1
2

More than 5 years have passed since last update.

最速でGCE(Debian)上にNginx+Tomcat環境を構築する

Last updated at Posted at 2018-11-27

手順

  1. Java をインストール
  2. Java の設定
  3. Tomcat8 をインストール
  4. Tomcat8 の設定を変更
  5. GCEファイヤーウォール設定
  6. Nginx をインストール
  7. Nginx の設定

Javaをインストール

sudo apt-get install default-jre 

Javaの設定

readlink $(readlink $(which java))
> /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java

Javaのパスが出てくるので、/bin/java の手前までを設定する。

echo "JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/jre" >> /etc/profile
echo "export JAVA_HOME" >> /etc/profile

Tomcat8をインストール

sudo apt-get update
sudo apt-get install tomcat8

Tomcat8の設定を変更

server.xml を編集する。

sudo cp -a /etc/tomcat8/server.xml{,.old}
sudo vi /etc/tomcat8/server.xml

8080で検索して

    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="UTF-8" />

と、「URIEncoding="UTF-8"」 を追加。

GCEファイアーウォールを設定

  1. Google Cloud Platform のサイドメニュー→VPCネットワーク→ファイアウォールルール
  2. 上側にある「ファイアウォールルールを作成」をクリック
  3. 内容をそれぞれ設定し、作成をクリック
    • 名前:firewall-8080(一例)
    • ターゲット:指定されたターゲットタグ
    • ターゲットタグ:firewall-8080
    • ソースIDの範囲:0.0.0.0/0
    • プロトコルとポート:tcp:8080
  4. VMインスタンスの画面で、公開するインスタンスの名前をクリック
  5. 上側にある「編集」をクリック
  6. 中段付近にある「ネットワークタグ」に「firewall-8080」を追加
  7. 保存をクリック

Tomcatの起動と、ポートが通っているか確認

起動は、

sudo /etc/init.d/tomcat8 start

ポート確認は、

wget http://localhost:8080

ここでステータスコード 200 が返ってきてればOK。

> HTTP request sent, awaiting response... 200 

Nginxのインストール

sudo apt-get install nginx

Nginxの設定

tomcat用のドキュメントルートを作成。

sudo mkdir -p /var/www/tomcat

/etc/nginx/sites-enabled ディレクトリに設定ファイルを追加する。

sudo vi /etc/nginx/sites-enabled/tomcat.conf

tomcat.conf の内容は、

server {
  listen 80;
  server_name XXX.XXX.XXX.XXX;

  root /var/www/tomcat;

  access_log /var/log/nginx/tomcat_access.log;
  error_log /var/log/nginx/tomcat_error.log;

  location / {
    proxy_pass http://127.0.0.1:8080/;
  }
}

「XXX.XXX.XXX.XXX」には、GCEのVMインスタンスの外部IPを書く。独自ドメインを取得していれば、ドメイン名を書く。

Nginxを起動。

sudo /etc/init.d/nginx start

サイトへ接続

GCEの外部IPをブラウザに入力(例:http://XXX.XXX.XXX.XXX)。80番ポートから繋がり、「It works !」の表示がされれば成功。

※GCEのVMインスタンス画面の外部IPをクリックした場合、HTTPSで繋げようとするため、SSLの設定が済んでいない場合は、ブラウザにIPアドレスを直打ちして、HTTPで接続しないと繋がらない。

1
2
0

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
  3. You can use dark theme
What you can do with signing up
1
2