Webサーバーをインストールする

Webサーバーをインストールする

EC2インスタンスにWebサーバーをインストールしていきましょう。

私がメインで業務利用していたのはapacheでしたが、最近はNginxというものが多く使われているようですね。

SIerでは実績重視で未だにapacheを使っているところが多いです。ノウハウを持っているエンジニアも多くいますしね。

qiita.com

今回は、Nginxをインストールしていきましょう。

まずはパッケージ管理システムの yum のアップデートを行います。

[ec2-user@ip-xxx-xxx-xxx-xxx ~]$ sudo yum update
読み込んだプラグイン:extras_suggestions, langpacks, priorities, update-motd
amzn2-core | 2.4 kB 00:00
No packages marked for update
[ec2-user@ip-xxx-xxx-xxx-xxx ~]$

今回は特にアップデートが無かったようですね。

では、nginxのインストールを行います。

[ec2-user@ip-xxx-xxx-xxx-xxx ~]$ sudo yum install nginx
読み込んだプラグイン:extras_suggestions, langpacks, priorities, update-motd
パッケージ nginx は利用できません。
エラー: 何もしません

nginx is available in Amazon Linux Extra topic "nginx1.12"

To use, run
# sudo amazon-linux-extras install nginx1.12 Learn more at https://aws.amazon.com/amazon-linux-2/faqs/#Amazon_Linux_Extras
[ec2-user@ip-xxx-xxx-xxx-xxx ~]$

Nginxがインストールできない?

インストールコマンドが通りませんでした。

現在、このEC2インスタンスは、インスタンス作成の回で選択した「Amazon Linux 2」が動いています。yumリポジトリにnginxが無く、Extraリポジトリを指定せよということらしいですね。

qiita.com

dev.classmethod.jp

改めてExtraレポジトリを指定してインストール

To use, runの以下に記載されている通り、Extraレポジトリ、バージョン1.12を指定してインストールしてみましょう。

[ec2-user@ip-xxx-xxx-xxx-xxx ~]$ sudo yum install nginx
Installing nginx
読み込んだプラグイン:extras_suggestions, langpacks, priorities, update-motd リポジトリーを清掃しています: amzn2-core amzn2extra-docker amzn2extra-nginx1.12
10 個の metadata ファイルを削除しました
4 個の sqlite ファイルを削除しました
0 個の metadata ファイルを削除しました
読み込んだプラグイン:extras_suggestions, langpacks, priorities, update-motd
amzn2-core                                               | 2.4 kB     00:00      amzn2extra-docker                                        | 1.3 kB     00:00      amzn2extra-nginx1.12                                     | 1.3 kB     00:00      (1/5): amzn2-core/2/x86_64/group_gz                        | 2.4 kB   00:00
〜(省略)〜
                        x86_64 1:1.12.2-2.amzn2.0.1 amzn2extra-nginx1.12  26 k  nginx-mod-mail          x86_64 1:1.12.2-2.amzn2.0.1 amzn2extra-nginx1.12  55 k  nginx-mod-stream        x86_64 1:1.12.2-2.amzn2.0.1 amzn2extra-nginx1.12  76 k  stix-fonts              noarch 1.1.0-5.amzn2        amzn2-core           1.3 M   トランザクションの要約 ================================================================================ インストール  1 パッケージ (+20 個の依存関係のパッケージ)   総ダウンロード容量: 4.2 M インストール容量: 11 M
Is this ok [y/d/N]: 

 インストールを続行するので、yを入力してください。

Is this ok [y/d/N]: y
Downloading packages:
(1/21): fontpackages-filesystem-1.44-8.amzn2.noarch.rpm    |  10 kB   00:00
(2/21): fontconfig-2.10.95-11.amzn2.0.2.x86_64.rpm         | 231 kB   00:00
(3/21): gd-2.0.35-26.amzn2.0.2.x86_64.rpm                  | 147 kB   00:00      (4/21): gperftools-libs-2.6.1-1.amzn2.x86_64.rpm           | 274 kB   00:00
(5/21): libX11-1.6.5-2.amzn2.0.2.x86_64.rpm                | 614 kB   00:00      (6/21): libX11-common-1.6.5-2.amzn2.0.2.noarch.rpm         | 164 kB   00:00
(7/21): libXau-1.0.8-2.1.amzn2.0.2.x86_64.rpm              |  29 kB   00:00      (8/21): libXpm-3.5.12-1.amzn2.0.2.x86_64.rpm               |  57 kB   00:00
(9/21): libpng-1.5.13-7.amzn2.0.2.x86_64.rpm               | 214 kB   00:00      (10/21): libxcb-1.12-1.amzn2.0.2.x86_64.rpm                | 216 kB   00:00
(11/21): libxslt-1.1.28-5.amzn2.0.2.x86_64.rpm             | 243 kB   00:00      (12/21): nginx-all-modules-1.12.2-2.amzn2.0.1.noarch.rpm   |  17 kB   00:00
(13/21): nginx-filesystem-1.12.2-2.amzn2.0.1.noarch.rpm    |  17 kB   00:00      (14/21): nginx-1.12.2-2.amzn2.0.1.x86_64.rpm               | 532 kB   00:00
  〜(省略)〜
31 php7.3 available \
[ =7.3.2 =7.3.3 =7.3.4 =7.3.6 =7.3.8 ]
32 lustre2.10 available [ =2.10.5 ]
33 java-openjdk11 available [ =11 ]
34 lynis available [ =stable ]
35 kernel-ng available [ =stable ]
36 BCC available [ =0.x ]
37 mono available [ =5.x ]
[ec2-user@ip-xxx-xxx-xxx-xxx ~]$

インストールが完了しました。Nginxをスタートさせて、バージョン情報を見てみましょう。

[ec2-user@ip-xxx-xxx-xxx-xxx ~]$ sudo service nginx start
[ec2-user@ip-xxx-xxx-xxx-xxx ~]$ nginx -v
nginx version: nginx/1.12.2
[ec2-user@ip-xxx-xxx-xxx-xxx ~]$ 

次回は、Nginxを設定して、テストページを公開します。