先日各種linuxのOS情報を確認するコマンドneofetchを様々な環境で試した記事を作成しました。
この記事を作成するにあたり、構築したDockerの検証環境をまとめたいと思います。
各種検証環境の作成
Dockerfileを元にイメージを作成して、そのイメージをdocker runコマンドで叩く方式を取っています。
- Dockerfileを作成する
- Dockerfieを元にイメージを作成する。
- 手順2.で作成したイメージをdocker runする。
neofetchが実行されます。
Ubuntu
Dockerfile
FROM ubuntu:20.04
RUN apt update && \
apt install -y neofetch
CMD [ "neofetch" ]
実行コマンド
docker image build -t neofetch_ubuntu ./ubuntu17_04
docker run --rm neofetch_ubuntu
ちなみに"--rm"はコンテナが停止した場合に削除まで自動で行うオプションです。
今回のイメージはneofetchコマンドを実行するだけなので、起動後不要なコンテナを削除するため上記オプションを指定します。
Centos
Dockerfile
FROM centos:8
RUN yum install -y wget && \
wget https://copr.fedorainfracloud.org/coprs/konimex/neofetch/repo/epel-7/konimex-neofetch-epel-7.repo -O /etc/yum.repos.d/konimex-neofetch-epel-7.repo && \
yum install -y neofetch
CMD [ "neofetch" ]
実行コマンド
docker image build -t neofetch_centos ./centos
docker run --rm neofetch_centos
Fedora
Dockerfile
FROM fedora:31
RUN dnf install -y neofetch
CMD [ "neofetch" ]
実行コマンド
docker image build -t neofetch_fedora ./fedora
docker run --rm neofetch_fedora
AlpineLinux
Dockerfile
FROM alpine:3
RUN apk update && \
apk add --no-cache neofetch
CMD [ "neofetch" ]
実行コマンド
docker image build -t neofetch_alpine ./alpine
docker run --rm neofetch_alpine
ArchLinux
Dockerfile
FROM archlinux:20200407
RUN yes | pacman -Syu neofetch
CMD [ "neofetch" ]
実行コマンド
docker image build -t neofetch_arch ./arch
docker run --rm neofetch_arch
Debian
Dockerfile
FROM debian:stretch
RUN apt-get update && \
apt-get install -y neofetch
CMD [ "neofetch" ]
実行コマンド
docker image build -t neofetch_debian ./debian
docker run --rm neofetch_debian
openSUSE
Dockerfile
FROM opensuse/leap
RUN zypper install -y neofetch
CMD [ "neofetch" ]
実行コマンド
docker image build -t neofetch_opensuse ./opensuse
docker run --rm neofetch_opensuse
全コマンドの実行
イメージ作成後、下記コマンドを実行することで試すことが可能です。
docker run --rm neofetch_ubuntu
docker run --rm neofetch_centos
docker run --rm neofetch_fedora
docker run --rm neofetch_alpine
docker run --rm neofetch_arch
docker run --rm neofetch_debian
docker run --rm neofetch_opensuse
まとめ
以上でneofetchを各種OSで実行する環境の完成です。
こうやっていろんなOSを気軽に試すことができるDockerって便利ですね!