こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在5社経験している、13年目エンジニアです。
この記事ではDocker Desktopをインストールしたら最初から入っている
welcome-to-dockerをいろいろ動かしてみました。
ご参考になれば幸いです。
前提条件:実行環境について
実行環境は以下の通りです。
OS | Windows11 |
---|---|
Dockerのバージョン | 27.4.0 |
この記事で書いている動かし方については、以下の公式を参考にさせていただきました。
「welcome-to-docker」を動かしてみた
【Start】を選択します。
「welcome-to-docker」が起動しました。
【Port】のリンクが飛べるようになったので、押してみます。
Congratulations!!!
You ran your first container.
という祝福と花吹雪の画面が表示できました。
無事、コンテナは動いてますね。
ちなみに、
http://localhost:8088
のURLからアクセスしても、同じ画面が表示されます。
お次は、サンプルアプリケーションのリポジトリをクローンしてみます。
Windowsなのでwsl上で動かします。
/home/【ユーザー】/docker-sample
配下で
1 |
git clone https://github.com/docker/welcome-to-docker |
をたたきます。
1 2 3 4 5 6 7 |
Cloning into 'welcome-to-docker'... remote: Enumerating objects: 144, done. remote: Counting objects: 100% (67/67), done. remote: Compressing objects: 100% (45/45), done. remote: Total 144 (delta 47), reused 22 (delta 22), pack-reused 77 (from 3) Receiving objects: 100% (144/144), 477.12 KiB | 4.46 MiB/s, done. Resolving deltas: 100% (65/65), done. |
100%になったので、無事完了です。
ファイルがクローンできていることが確認できました。
Dockerfileとやらを確認してみます。
そもそも、Dockerfileとはなんでしょうか?
DockerはDockerfileから命令を読み込み、自動的にイメージをビルドできます。
Dockerfileはテキストファイルであり、イメージを作り上げるために実行するコマンドライン命令を、すべてこのファイルに含められます。
docker build を実行すると、順次コマンドライン命令を自動化した処理を行い、ビルド結果となるイメージが得られます。
Dockerfile リファレンスから引用させて頂きました
どうやらDockerfileとは、Dockerのイメージを作るためのコマンドをまとめているテキストファイルのようです。
git cloneした場合Dockerfileは
/home/【ユーザー】/docker-sample/welcome-to-docker
直下にあります。
中身は以下でした。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# Start your image with a node base image FROM node:18-alpine # The /app directory should act as the main application directory WORKDIR /app # Copy the app package and package-lock.json file COPY package*.json ./ # Copy local directories to the current local directory of our docker image (/app) COPY ./src ./src COPY ./public ./public # Install node packages, install serve, build the app, and remove dependencies at the end RUN npm install \ && npm install -g serve \ && npm run build \ && rm -fr node_modules EXPOSE 3000 # Start the app using serve command CMD [ "serve", "-s", "build" ] |
イメージを構築してみます。
/home/【ユーザー】/docker-sample/welcome-to-docker
配下で
1 |
docker build -t welcome-to-docker . |
をたたきます。
ビルドが始まるので少し待ちます。
無事終わりました。
ビルドが完了すると、【Docker Desktop】の【Images】に「welcome-to-docker」が作成されているとのこと。
確認してみると、確かに「welcome-to-docker」がありました。
【Run】を押して実行してみます。
【Run a new container】というポップアップが表示されました。
オプションを設定できるようなので、表示させてみます。
【Ports】に「8089」を指定し、【Run】を押して実行してみます。
「fervent_margulis」という名前で実行し始めました。
http://localhost:8089
のURLからアクセスしてみると、ポート番号が「8088」と同じ祝福と花吹雪の画面が表示できました。
【Docker Desktop】の【Containers】を確認してみると
- welcome-to-docker
- fervent_margulis
どちらも実行されていることが確認できました。
【Stop】を押せば止めることができます。
Docker Hubのイメージ実行をしてみます。
そもそも、Docker Hubとはなんでしょうか?
Docker Hub はクラウド上のレジストリ・サービスであり、アプリケーションやサービス・コンテナの構築と配信を行います。
コンテナ化されたイメージを見つけたり、配布したり、変更の管理、ユーザやチームのコラボレーション、開発パイプラインを通したワークフローの自動化といった集約されたリソースを提供します。
Docker Hub 概要から引用させて頂きました
どうやらDocker Hubとは、Dockerのレジストリサービスのようです。
無料版と有料版があり、当たり前ですが有料版のほうがより多くのリポジトリを使えるようになるそうです。
【Docker Desktop】の【Docker Hub】を選択して、「welcome-to-docker」を検索します。
すると、1番上に出てくるので選択します。
「docker/welcome-to-docker」が表示されます。
実行させるので、【Run】を押してみます。
【Ports】に「8090」を指定し、【Run】を押して実行してみます。
「cranky_snyder」という名前で実行し始めました。
http://localhost:8090
のURLからアクセスしてみると、ポート番号が「8088」「8089」と同じ祝福と花吹雪の画面が表示できました。
【Docker Desktop】の【Containers】を確認してみると
- welcome-to-docker
- fervent_margulis
- cranky_snyder
すべて実行されていることが確認できました。
まとめ:「welcome-to-docker」を動かしてみた!
以上がDockerをインストールしたら最初から入っている「welcome-to-docker」を動かしてみた!でした!
あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ
コメント