Ubuntuにnginxをインストールする方法をご紹介します。
目次
条件
- Ubuntu 16.04.5 LTS
インストールされているnginxのバージョン確認
apt-cache policy コマンドを実行します。
# apt-cache policy nginx nginx: インストールされているバージョン: (なし) 候補: 1.10.3-0ubuntu0.16.04.2 バージョンテーブル: 1.10.3-0ubuntu0.16.04.2 500 500 http://nova.clouds.archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages 500 http://nova.clouds.archive.ubuntu.com/ubuntu xenial-updates/main i386 Packages 500 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages 500 http://security.ubuntu.com/ubuntu xenial-security/main i386 Packages 1.9.15-0ubuntu1 500 500 http://nova.clouds.archive.ubuntu.com/ubuntu xenial/main amd64 Packages 500 http://nova.clouds.archive.ubuntu.com/ubuntu xenial/main i386 Packages #
上記はnginxがインストールされていない場合の例です。
現在登録されているキーの確認
apt-key list コマンドを実行します。
# apt-key list /etc/apt/trusted.gpg -------------------- pub 1024D/437D05B5 2004-09-12 uid Ubuntu Archive Automatic Signing Key <ftpmaster@ubuntu.com> sub 2048g/79164387 2004-09-12 pub 4096R/C0B21F32 2012-05-11 uid Ubuntu Archive Automatic Signing Key (2012) <ftpmaster@ubuntu.com> pub 4096R/EFE21092 2012-05-11 uid Ubuntu CD Image Automatic Signing Key (2012) <cdimage@ubuntu.com> pub 1024D/FBB75451 2004-12-30 uid Ubuntu CD Image Automatic Signing Key <cdimage@ubuntu.com> pub 4096R/0EBFCD88 2017-02-22 uid Docker Release (CE deb) <docker@docker.com> sub 4096R/F273FCD8 2017-02-22 pub 4096R/68576280 2014-06-13 uid NodeSource <gpg@nodesource.com> sub 4096R/AA01DA2C 2014-06-13 /etc/apt/trusted.gpg.d/cdemu_ubuntu_ppa.gpg ------------------------------------------- pub 1024R/D782A00F 2009-01-19 uid Launchpad PPA for CDEmu /etc/apt/trusted.gpg.d/chris-lea_ubuntu_redis-server.gpg -------------------------------------------------------- pub 1024R/C7917B12 2010-05-17 uid Launchpad chrislea /etc/apt/trusted.gpg.d/ubuntu-mate-dev_ubuntu_xenial-mate.gpg ------------------------------------------------------------- pub 4096R/162506E7 2014-06-24 uid Launchpad PPA for Ubuntu MATE Remix Developers #
上記はnginxのキーが存在しない場合の例です。
nginxのサイトが配布しているPGP keyの追加
nginxのサイトが配布しているPGP keyを追加します。
(キーのダウンロードおよびaptへの追加)
# curl http://nginx.org/keys/nginx_signing.key | apt-key add - % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 1561 100 1561 0 0 2001 0 --:--:-- --:--:-- --:--:-- 2001 OK #
curl でキーのダウンロードを行い、apt-key add でダウンロードしたキーの追加を行っています。
参考
以下はnginxのサイトの説明です。
http://nginx.org/en/linux_packages.html#mainline
キーが追加されたことの確認
キーが追加されたことを確認します。
apt-key list コマンドを実行します。
# apt-key list /etc/apt/trusted.gpg -------------------- pub 1024D/437D05B5 2004-09-12 uid Ubuntu Archive Automatic Signing Key <ftpmaster@ubuntu.com> sub 2048g/79164387 2004-09-12 pub 4096R/C0B21F32 2012-05-11 uid Ubuntu Archive Automatic Signing Key (2012) <ftpmaster@ubuntu.com> pub 4096R/EFE21092 2012-05-11 uid Ubuntu CD Image Automatic Signing Key (2012) <cdimage@ubuntu.com> pub 1024D/FBB75451 2004-12-30 uid Ubuntu CD Image Automatic Signing Key <cdimage@ubuntu.com> pub 4096R/0EBFCD88 2017-02-22 uid Docker Release (CE deb) <docker@docker.com> sub 4096R/F273FCD8 2017-02-22 pub 4096R/68576280 2014-06-13 uid NodeSource <gpg@nodesource.com> sub 4096R/AA01DA2C 2014-06-13 pub 2048R/7BD9BF62 2011-08-19 [有効期限: 2024-06-14] uid nginx signing key <signing-key@nginx.com> /etc/apt/trusted.gpg.d/cdemu_ubuntu_ppa.gpg ------------------------------------------- pub 1024R/D782A00F 2009-01-19 uid Launchpad PPA for CDEmu /etc/apt/trusted.gpg.d/chris-lea_ubuntu_redis-server.gpg -------------------------------------------------------- pub 1024R/C7917B12 2010-05-17 uid Launchpad chrislea /etc/apt/trusted.gpg.d/ubuntu-mate-dev_ubuntu_xenial-mate.gpg ------------------------------------------------------------- pub 4096R/162506E7 2014-06-24 uid Launchpad PPA for Ubuntu MATE Remix Developers #
「nginx signing key」が追加されていることがわかります。
/etc/apt/sources.list への追記
Ubuntu distribution codenameを指定して、/etc/apt/sources.listに追記します。
codename の確認
codenameを以下のサイトで確認します。
http://nginx.org/en/linux_packages.html#distributions
/etc/apt/sources.listに追記
ここではUbuntu 16.04を使用しているため、xenialを指定しています。
sudo sh -c "echo 'deb http://nginx.org/packages/ubuntu/ xenial nginx' >> /etc/apt/sources.list" sudo sh -c "echo 'deb-src http://nginx.org/packages/ubuntu/ xenial nginx' >> /etc/apt/sources.list"
パッケージリストの更新
パッケージリストを更新します。
apt-get update コマンドを実行します。
最新版のnginxがインストールできることの確認
最新版の1.14.0がインストールできるようになったことを確認します。
apt-cache policy nginx コマンドを実行します。
# apt-cache policy nginx nginx: インストールされているバージョン: (なし) 候補: 1.14.0-1~xenial バージョンテーブル: 1.14.0-1~xenial 500 500 http://nginx.org/packages/ubuntu xenial/nginx amd64 Packages 1.12.2-1~xenial 500 500 http://nginx.org/packages/ubuntu xenial/nginx amd64 Packages 1.12.1-1~xenial 500 500 http://nginx.org/packages/ubuntu xenial/nginx amd64 Packages 1.12.0-1~xenial 500 500 http://nginx.org/packages/ubuntu xenial/nginx amd64 Packages 1.10.3-1~xenial 500 500 http://nginx.org/packages/ubuntu xenial/nginx amd64 Packages 1.10.3-0ubuntu0.16.04.2 500 500 http://nova.clouds.archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages 500 http://nova.clouds.archive.ubuntu.com/ubuntu xenial-updates/main i386 Packages 500 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages 500 http://security.ubuntu.com/ubuntu xenial-security/main i386 Packages 1.10.2-1~xenial 500 500 http://nginx.org/packages/ubuntu xenial/nginx amd64 Packages 1.10.1-1~xenial 500 500 http://nginx.org/packages/ubuntu xenial/nginx amd64 Packages 1.10.0-1~xenial 500 500 http://nginx.org/packages/ubuntu xenial/nginx amd64 Packages 1.9.15-0ubuntu1 500 500 http://nova.clouds.archive.ubuntu.com/ubuntu xenial/main amd64 Packages 500 http://nova.clouds.archive.ubuntu.com/ubuntu xenial/main i386 Packages #
候補に「1.14.0-1~xenial」と表示されていることがわかります。
これでインストール準備は整いました。
インストール実行
apt-get install nginx コマンドを実行してインストールを行います。
インストールされたnginxのバージョン確認
インストールされたnginxのバージョンを確認します。
最新版である1.14.0という表示が出ればOKです。
nginx -v コマンドを実行します。
# nginx -v nginx version: nginx/1.14.0 #
nginxの起動確認など
以下のコマンドでnginxの起動を行います。
$ sudo service nginx start
ブラウザにサーバーのIPアドレスを入力し、以下のような表示となれば起動出来ています。
停止する場合は以下のコマンドを実行します。
$ sudo service nginx stop
状態を確認する場合は以下のコマンドを実行します。
$ sudo service nginx status