CentOS8にNginxを入れずにdockerでNginx起動

2020-10-18_190631.png
ごきげんよう。

CentOS8にNginxを入れずにNginx起動する


CentOS8にNginxを入れずにNginx起動することは可能だ。具体的にはdockerをインストールしてdockerを利用してNginxを起動する。
# nginx -V

2020-10-18_185817.png
CentOS8にはNginxをインストールしていないので、コマンドが見つかりませんでしたのメッセージ。その後にnginx のインストールを促してくるがNo。この状態でdockerをインストールしてdockerを利用してNginxを起動してみる。

CentOS8にdockerをインストール手順についての参照元


docs.docker.comCentOSにDockerエンジンをインストールするを参考にしようかと思ったが、CentOS7を対象としており、CentOS8向けではなかった。そのため、CentOs8にdockerをインストールを参考にさせてもらいインストールの実施をすることにした。

CentOS8にdockerをインストール(失敗)


手順としては
CentOSにDockerエンジンをインストールするを参考に、一応古いバージョンのアンインストールを実施
# dnf remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine

②CentOS Linuxのバージョン確認
# cat /etc/centos-release

CentOS Linux release 8.2.2004 (Core)
③リポジトリの追加 確認
# dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

④リポジトリの確認
# dnf repolist

⑤DockerEngineのインストールを実施(失敗)
# dnf install --nobest docker-ce

2020-10-18_182424.png
CentOS8をインストール直後の状態では、古いバージョンのdockerアンインストールは対象が無かったので「①CentOSにDockerエンジンをインストールするを参考に、一応古いバージョンのアンインストールを実施」は飛ばしてもらって問題ない。

CentOS8にdockerをインストール(成功)


競合するパッケージがあり、DockerEngineのインストールに失敗したので、警告通り競合するパッケージを置きかえるコマンドラインを追加して再度CentOS8にdockerのインストールを実施した
⑤DockerEngineのインストールを実施(成功)
# dnf install --nobest docker-ce --allowerasing

2020-10-18_182500.png
dockerインストールが成功したので
⑥dockerのバージョンを確認
# docker --version

Docker version 19.03.13, build 4484c46d9d
⑦dockerの自動起動と起動設定
# systemctl enable docker
# systemctl start docker

を実施。
2020-10-18_182614.png

dockerを利用してNginxを起動する


⑧dockerを利用してNginxを起動
# docker run --name testnginx -d -p 8080:80 nginx

⑨dockerのコンテナの状態の情報表示
# docker ps -a

2020-10-18_232838.png
docker runでnginxを「testnginx」という名前で<ホスト側のポート>:<コンテナ側のポート>を8080:80で実行している。
docker ps -aでコンテナの状態を表示すると
NAMESが「testnginx」PORTSが「0.0.0.0:8080->80/tcp」と、指定した条件で実行されているのが確認できる。なお後で確認することになるので、CONTAINER IDが「c917cab45486」で実行されていることにも注目しておいてほしい。

Firefoxでhttp://localhost:8080にアクセス


Firefoxでhttp://localhost:8080にアクセスする。8080なのはdocker runで「-p 8080:80」と指定した為だ。
2020-10-18_182852.png
CentOS8にNginxを入れずにdockerを利用してNginx起動することに成功した。

Dockerコンテナ、イメージを削除する


⑩dockerのコンテナの停止
# docker stop c917cab45486

⑪dockerのコンテナを削除
# docker rm c917cab45486

⑫dockerのコンテナの状態の情報表示
# docker ps -a

2020-10-18_234125.png
実行中のコンテナを削除しようとするとエラーとなるので、事前にdocker stopでCONTAINER ID「c917cab45486」を指定して停止している。その後、docker rmで削除してdockerのコンテナが無くなったことをdocker ps -aで確認している。
⑬dockerのイメージの状態の情報表示
# docker images

⑭dockerのイメージを削除
# docker rmi f35646e83998

⑮dockerのイメージの状態の情報表示
# docker images

2020-10-20_153857.png
dockerのコンテナは削除したが、dockerのイメージは残っている。dockerのイメージの情報表示を行い、IMAGE IDを指定してdockerのイメージを削除、再度dockerのイメージの情報表示を行い、dockerのイメージが無くなったことを確認している。

この記事へのコメント


人気ブログランキングへ