この記事には広告を含む場合があります。
記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。
AWS の CentOS に Nginx を導入する
CentOS7 には Apache をインストール機会が多いのですが、Nginx をインストールすることがありました。「yum install」コマンドで簡単にインストールできるだろうと考えていましたが、パッケージがないとのエラーが発生。忘れないように手順を残しておきます。
パッケージなしのエラー画面
1 2 3 4 5 6 7 8 |
[root@hostname]# yum install nginx Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: ftp-srv2.kddilabs.jp * extras: ftp-srv2.kddilabs.jp * updates: ftp-srv2.kddilabs.jp No package nginx available. Error: Nothing to do |
CentOS に Nginx を導入した際の手順
まずは見やすいように情報をまとめて記載します。基本的なインストールの流れとしては、CentOS の yum に nginx リポジトリを追加してインストールする方針です。
手順1:「yum-utils」をインストールします。
手順2:手動で「/etc/yum.repos.d/nginx.repo」を作成します。ファイル内に記述する内容は、
1 2 3 4 5 6 7 8 9 10 11 12 13 |
[nginx-stable] name=nginx stable repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key [nginx-mainline] name=nginx mainline repo baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/ gpgcheck=1 enabled=0 gpgkey=https://nginx.org/keys/nginx_signing.key |
の通りです。
手順3:nginx パッケージが追加されていることを確認します。
手順4:「yum install」コマンドで、nginx をインストールして作業完了になります。
参考情報:Nginx 公式の Linux 別のインストール手順
http://nginx.org/en/linux_packages.html#RHEL-CentOS
CentOS に Nginx を導入した際の履歴と詳細説明
まずは「yum install」コマンドで、「yum-utils」をインストールします。今回の AWS にある CentOS7 では、該当のパッケージは既にインストール済みでした。
1 2 3 4 5 6 7 8 |
[root@hostname]# sudo yum install yum-utils Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: ftp-srv2.kddilabs.jp * extras: ftp-srv2.kddilabs.jp * updates: ftp-srv2.kddilabs.jp Package yum-utils-1.1.31-50.el7.noarch already installed and latest version Nothing to do |
次に yum のパッケージが格納されたパスを確認して、パッケージ内に nginx がないことを確認しています。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
[root@hostname]# cd /etc/yum.repos.d/ [root@hostname yum.repos.d]# ls -la total 44 drwxr-xr-x. 2 root root 187 Nov 5 10:53 . drwxr-xr-x. 78 root root 8192 Apr 8 10:15 .. -rw-r--r--. 1 root root 1664 Nov 23 22:16 CentOS-Base.repo -rw-r--r--. 1 root root 1309 Nov 23 22:16 CentOS-CR.repo -rw-r--r--. 1 root root 649 Nov 23 22:16 CentOS-Debuginfo.repo -rw-r--r--. 1 root root 314 Nov 23 22:16 CentOS-fasttrack.repo -rw-r--r--. 1 root root 630 Nov 23 22:16 CentOS-Media.repo -rw-r--r--. 1 root root 1331 Nov 23 22:16 CentOS-Sources.repo -rw-r--r--. 1 root root 5701 Nov 23 22:16 CentOS-Vault.repo [root@hostname yum.repos.d]# find ./ -type f | xargs grep nginx |
nginx のパッケージを追加するために、nginx をインストールするための「nginx.repo」ファイルを追加しました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
[root@hostname yum.repos.d]# vi nginx.repo [root@hostname yum.repos.d]# ls -la total 48 drwxr-xr-x. 2 root root 205 Apr 22 11:37 . drwxr-xr-x. 78 root root 8192 Apr 8 10:15 .. -rw-r--r--. 1 root root 1664 Nov 23 22:16 CentOS-Base.repo -rw-r--r--. 1 root root 1309 Nov 23 22:16 CentOS-CR.repo -rw-r--r--. 1 root root 649 Nov 23 22:16 CentOS-Debuginfo.repo -rw-r--r--. 1 root root 314 Nov 23 22:16 CentOS-fasttrack.repo -rw-r--r--. 1 root root 630 Nov 23 22:16 CentOS-Media.repo -rw-r--r--. 1 root root 1331 Nov 23 22:16 CentOS-Sources.repo -rw-r--r--. 1 root root 5701 Nov 23 22:16 CentOS-Vault.repo -rw-r--r--. 1 root root 356 Apr 22 11:37 nginx.repo [root@hostname yum.repos.d]# cat nginx.repo [nginx-stable] name=nginx stable repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key [nginx-mainline] name=nginx mainline repo baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/ gpgcheck=1 enabled=0 gpgkey=https://nginx.org/keys/nginx_signing.key |
yum が追加した nginx のリポジトリを認識しているかを確認します。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
[root@hostname yum.repos.d]# sudo yum-config-manager --enable nginx-mainline | grep nginx ============================= repo: nginx-mainline ============================= [nginx-mainline] baseurl = http://nginx.org/packages/mainline/centos/7/x86_64/ cachedir = /var/cache/yum/x86_64/7/nginx-mainline gpgcadir = /var/lib/yum/repos/x86_64/7/nginx-mainline/gpgcadir gpgdir = /var/lib/yum/repos/x86_64/7/nginx-mainline/gpgdir gpgkey = https://nginx.org/keys/nginx_signing.key hdrdir = /var/cache/yum/x86_64/7/nginx-mainline/headers name = nginx mainline repo persistdir = /var/lib/yum/repos/x86_64/7/nginx-mainline pkgdir = /var/cache/yum/x86_64/7/nginx-mainline/packages ui_id = nginx-mainline/7/x86_64 |
最後に「yum install」コマンドで nginx をインストールしています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
[root@example yum.repos.d]# sudo yum install nginx Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: ftp-srv2.kddilabs.jp * extras: ftp-srv2.kddilabs.jp * updates: ftp-srv2.kddilabs.jp nginx-mainline | 2.9 kB 00:00:00 nginx-stable | 2.9 kB 00:00:00 (1/2): nginx-stable/7/x86_64/primary_db | 42 kB 00:00:01 (2/2): nginx-mainline/7/x86_64/primary_db | 142 kB 00:00:01 Resolving Dependencies (中略) ---------------------------------------------------------------------- Verifying : 1:nginx-1.15.12-1.el7.ngx.x86_64 1/1 Installed: nginx.x86_64 1:1.15.12-1.el7.ngx Complete! |