2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

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

Last updated at Posted at 2020-10-18

Qiiaに投稿してみるにあたり、自分のブログに掲載した内容をQiia向けに修正して投稿してみることに。画像挿入や見出しや引用など、修正する作業量は割と多かった。
##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でlocalhost:8080にアクセス

Firefoxで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
IMAGE ID f35646e83998

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

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

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

2
1
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
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?