Windows11に Oracle VM VirtualBox を入れて 仮想マシンを動かす(1:VirtualBoxインストール)

 本記事は、Windows11にホスト型仮想化環境プラットフォームのOracle VM Virtualboxをインストールした手順のメモです。

 仮想化やホスト型仮想化環境プラットフォームについては、以前 Windows11 にDocker Desktopをインストールした際の記事で説明していますが、以下でも簡単に説明します。

 「仮想化」とはハードウェアリソース(CPU、メモリ、ディスク等)をソフトウェアで統合・分割し、リソースを有効的に使う技術です。
 仮想化の方法には「ハイパーバイザー型」「ホスト型」「コンテナ型」が存在します。

今回インストールする『Oracle VM Virtualbox』は「ホスト型」に当たります。「ホスト型」はまずハードウェアの上にホストOSが存在し、ホストOSにインストールされたホスト型仮想化基盤が存在します。その上にゲストOS・アプリを合わせた仮想マシンが存在する、というものです。

 今後の記事で、Oracle VM Virtualboxで仮想マシンを作成し、OSをインストールすることを行っていきたいと思います。今回はまずOracle VM Virtualbox自体のインストールを行っていきます。


◆ Oracle VM VirtualBoxインストール手順 (2023年10月現在)

1.インストーラーのダウンロード

 Oracle VM Virtualboxのインストーラーは、Oracleのサイトからダウンロードする方法と、VirtualBoxのサイトからダウンロードする方法の2通りがあります。どちらでダウンロードしても問題ありませんが、VirtualBoxのサイトからダウンロードした方がバージョンアップに早く対応される場合があるようですので、Oracleのサイトからインストーラーをダウンロードして正常にインストールできない場合は、VirtualBoxのサイトからダウンロードしてみましょう。

 1-1.Oracleのサイトからダウンロードする場合

1-1-1.
OracleのVirtualBoxダウンロードページにアクセスします。
「Oracle VM Virtualbox Base Package – X.X.X」(X.X.X はバージョン番号) のリンクをクリックします。

1-1-2.
「Windows Installer」のリンクをクリックします。

1-1-3.
インストール用の.exeファイルがダウンロードされます。

 1-2.VirtualBoxのサイトからダウンロードする場合

1-2-1.
VirtualBoxのサイトにアクセスします。

1-2-2.
画面を下にスクロールし、「Download VirtualBox X.X」(X.X はバージョン番号) をクリックします。

1-2-3.
VirtualBox X.X.X platform packagesの「Windows hosts」リンクをクリックします。

1-2-4.
インストール用の.exeファイルがダウンロードされます。

2.インストール

2-1.
インストーラーを起動します。
「Next」をクリックします。

2-2.
インストールする機能を選択し、インストール先のフォルダを指定します。
今回はインストールする機能、インストール先ともに「Next」をクリックします。

2-3.
インストール中にネットワークが一時的に途切れる旨の警告が出ます。
問題なければ「Yes」をクリックします。

2-4.
VirtualBoxのPython bindingという機能をインストールするには予めPython Coreパッケージとwin32api bindingをインストールしておく必要があるようです。このままVirtualBoxをインストールする場合は、Python bindingは後でインストールすることになるようです。
仮想マシンを作成すること自体に特に影響はなかったので、今回はそのままで問題ないとみなして「Yes」をクリックします。

2-5.
「Install」をクリックします。

2-6.
インストールが完了するまでしばらく待ちます。

2-7.
「Finish」をクリックします。「Start Oracle VM VirtualBox X.X.X after installation」にチェックを入れておけばOracle VM Virtualboxが立ち上がります。

2-8.
以下の画面が起動すればインストール成功です。お疲れさまでした。


◆ 参考文献

【初心者でもわかる】VirtualBoxインストール方法を詳しく! (eng-entrance.com)

OWASP ZAP で Webアプリの脆弱性診断 (2:設定~スキャンの実施)

 本記事は、Windows11にインストールしたOWASP ZAPでWebアプリケーションの脆弱性をスキャンする手順のメモとなります。

 OWASP ZAPはOWASPというWebアプリケーションに関するコミュニティが作成している、Webアプリケーションを対象とした脆弱性スキャナーです。こちらの記事でインストール手順を解説しており、今回は実際にスキャンを実施してみます。スキャン対象には、こちらの記事で構築したWordPressを利用します。

 脆弱性スキャンは自身で構築したWebアプリケーションなど、許可された対象に実施してください。第三者のWebアプリケーションに対しての実行は、不正アクセスとみなされる可能性もあるため実施しないようにしましょう。またパブリッククラウド上に構築したWebアプリケーションの場合は、脆弱性スキャンを実施する旨を事前にパブリッククラウド業者へ申請する必要がある場合がありますのでご注意ください。


◆ OWASP ZAP による設定~スキャン手順
(2023年8月時点)

 スキャンまでの手順は大まかに以下の手順となります。

Ⅰ.OWASP ZAPの設定
Ⅱ.Firefoxの設定
Ⅲ.OWASP ZAPによるスキャン

Ⅰ.OWASP ZAPの設定

Ⅰ-1.
デスクトップ上のアイコン等からOWASP ZAPを起動します。

Ⅰ-2.
起動が完了するまでしばらく待ちます。

Ⅰ-3.
起動中に以下のようなWindowsDefenderファイアウォールの警告が出た場合は、「アクセスを許可する」をクリックします。

Ⅰ-4.
起動が完了すると、セッションの保存方法を問われます。ここでは「現在のタイムスタンプでファイル名を付けてセッションを保存」を選択して「開始」ボタンをクリックします。

Ⅰ-5.
画面左上のモード選択のプルダウンで「プロテクトモード」を選択します。これを選択することで、Webアプリケーション中のリンクなどから意図せず外部のURLにまで診断を行うことを防げるようです。

Ⅰ-6.
メニューバーで「ツール」を選択し、「オプション…」をクリックします。

Ⅰ-7.
左メニューの「Network」内の「Local Server/Proxies」を選択します。アドレス欄に『localhost』と入力し、ポート欄に『8080』など、他のアプリケーションで利用していないポート番号を指定します(このポートは後の手順でFirefoxのプロキシ設定に使用します)。その後「OK」ボタンをクリックします。

Ⅱ.Firefoxの設定

Ⅱ-1.
Firefoxを開き、右上のメニューから「設定」をクリックします。

Ⅱ-2.
一般メニューのネットワーク設定にある「接続設定」ボタンをクリックします。

Ⅱ-3.
インターネット接続に使用するプロキシーの設定で「手動でプロキシーを設定する」を選択します。HTTPプロキシー欄で『localhost』と入力し、ポートはⅠ-7でOWASP ZAPに設定したポートを指定します。「このプロキシーをHTTPSでも使用する」のチェックを入れます。SOCKSホスト欄も同様に『localhost』と入力し、ポートはⅠ-7でOWASP ZAPに設定したポートを指定します。「OK」をクリックします。

Ⅲ.OWASP ZAPによるスキャン

Ⅲ-1.
画面右側中央の「Manual Explore」をクリックします。

Ⅲ-2.
URL to explore欄にスキャンしたいWebアプリケーションのURLを入力します。ここではこちらの記事でPC内に作成したWordPressを指定します。その後「ブラウザの起動」ボタンをクリックします。

Ⅲ-3.
Firefoxが起動し、スキャン対象のWebアプリケーションが開いたのちに、画像のような「Welcome to the ZAP HUD」が表示されます。

Ⅲ-4.
左側にアクセスしたWebアプリケーションの階層が表示されるので、スキャンしたいトップ階層(ここでは127.0.0.1中のwordpressから)を右クリックし、「コンテキストに含める」>「新規コンテキスト…」を選択します。このようにしてコンテキストに含めることで、含めた階層以下に対する脆弱性スキャンが可能になります。

Ⅲ-5.
左上に新規コンテキストの名前を入力します。コンテキストに含まれるURLが意図したURLであることを確認し、「OK」ボタンをクリックします。

Ⅲ-6.
コンテキスト以下に追加されたスキャン対象を右クリックし「動的スキャン…」をクリックします。

Ⅲ-7.
動的スキャンのウィンドウが開くので「再帰的」にチェックを入れて「スキャンを開始」をクリックします。

Ⅲ-8.
スキャンが実行されるので、完了までしばらく待ちます。

Ⅲ-9.
「100%」となればスキャン完了です。左中央にある「アラート」をクリックします。

Ⅲ-10.
対象のWebアプリケーションに存在する脆弱性が確認できます。左のアラート一覧からそれぞれのアラートをクリックすることで、右側で脆弱性の詳細を確認できます。

そのアラートの脆弱性の詳細な内容の解説もあります。

また、どのような対処を行えばよいかのヒントも記載されていますので、これを参考にしてパッチを適用する、Webサーバーなどの設定変更を行う、といった対処を行い脆弱性を低減させていきましょう。今回はここまでとなります、お疲れさまでした。


◆ 参考文献

【OWASP ZAP】インストールと基本的な使い方【Web脆弱性診断】 | チグサウェブ (chigusa-web.com)
OWASP ZAPを使ったWebシステムの脆弱性診断【前編】|Solution – ソリューション|株式会社イージェーワークス (ejworks.com)
OWASP ZAPの設定と使い方 – Qiita

OWASP ZAP で Webアプリの脆弱性診断 (1:インストール)

 本記事は、Windows11にOWASP ZAPをインストールする手順のメモとなります。

 OWASP ZAPはOWASPというWebアプリケーションに関するコミュニティが作成している、Webアプリケーションを対象とした脆弱性スキャナーです。WebアプリケーションURLを指定してスキャンを行うことで、そのWebアプリケーションがもつ脆弱性を見つけることができます。
 脆弱性とは、プログラムの不具合や設計のミスによって発生した情報セキュリティ上の欠陥のことです。例えば、大まかにいうとWebアプリケーション内のテキストボックス(ログインID入力ボックスなど)にSQL(データベース操作言語)を入れることでデータを操作するSQLインジェクションなどがあります。

 実際にOWASP ZAPによってWebアプリケーションの脆弱性を診断する手順については次の記事で紹介します。


◆ OWASP ZAPインストール手順 (2023年8月時点)

 インストールは大まかに以下の手順となります。

Ⅰ.FireFoxのインストール
Ⅱ.OpenJDK (Amazon Corretto) のインストール
Ⅲ.OWASP ZAP のインストール

Ⅰ.Firefoxのインストール

 OWASP ZAPは自身をプロキシとして設定したWebブラウザからアクセスしたサイトに対して診断をかけます。EdgeやChromeのプロキシ設定はOSのプロキシ設定に利用するため、OSのプロキシ設定にOWASP ZAPを設定しなければなりませんが、Firefoxは独自にプロキシ設定を保持できるので、Firefoxのインストールをお勧めします。

Ⅰ-1.
mozillaサイトのFirefoxのページ(https://www.mozilla.org/ja/firefox/new/)にアクセスし、「Firefoxをダウンロード」をクリックします。

Ⅰ-2.
インストーラーのexeファイルがダウンロードされますので、起動します。

Ⅰ-3.
インストールが開始されるので待ちます。

Ⅰ-4.
Firefoxが立ち上がればインストールは成功です。こちらは閉じて構いません。

Ⅰ-5.
デスクトップ上にできたFirefoxのショートカットを右クリックし、「プロパティ」を選択します。

Ⅰ-6.
「ショートカット」タブにあるリンク先について、exeファイルの存在するパス(デフォルトでは ”C:¥Program Files¥Mozilla Firefox” )をコピーします。

Ⅰ-7.
スタートメニューの検索で「sysdm.cpl」をクリックし、「管理者として実行」を選択します。

Ⅰ-8.
開いた「システムのプロパティ」ウィンドウにて「詳細設定」タブの「環境変数」ボタンをクリックします。

Ⅰ-9.
システム環境変数の「Path」を選択し、「編集」ボタンをクリックします。

Ⅰ-10.
「新規」ボタンをクリックし、追加された行にFireFoxのインストールパス
 ”C:¥Program Files¥Mozilla Firefox”
を追加します。
その後「OK」ボタンをクリックします。

Ⅰ-11.
「OK」ボタンをクリックして環境変数ウィンドウを閉じます。

Ⅰ-12.
「OK」ボタンをクリックしてシステムのプロパティウィンドウを閉じます。

Ⅱ.OpenJDK (Amazon Corretto) のインストール

 OWASP ZAPを動作させるためにはJDKのインストールが必要になります。ここではAmazonが提供しているOpenJDKの「Amazon Corretto」のバージョン17をインストールします。

Ⅱ-1.
Amazon Correttoのページにアクセスし、右側の「Amazon Corretto 17 をダウンロードする」ボタンをクリックします。

Ⅱ-2.
利用OSに合わせてインストーラーをダウンロードします。今回はWindows11にインストールしますので、Windows x64版のmsiインストーラーをダウンロードします。
ダウンロードしたインストーラーをダブルクリックで起動します。

Ⅱ-3.
インストーラーが起動しますので「Next」をクリックします。

Ⅱ-4.
インストール機能、インストール先のパスはデフォルトのまま「Next」をクリックします。

Ⅱ-5.
「Install」をクリックします。

Ⅱ-6.
「Finish」をクリックします。

Ⅱ-7.
コマンドプロンプトを開き、以下のコマンドを実行します。
  java –version

バージョン情報が出ればインストール成功です。

Ⅲ.OWASP ZAP のインストール

Ⅲ-1.
OWASP ZAPのページにアクセスし、「Download Now」ボタンをクリックします。

Ⅲ-2.
最新バージョンの Windows (64) Installer の「Download」ボタンをクリックします。
ダウンロードされたexeファイルをダブルクリックで実行します。

Ⅲ-3.
インストーラーが開始されるのでしばらく待ちます。

Ⅲ-4.
「次へ」をクリックします。

Ⅲ-5.
ライセンス契約の「承認する」を選択し、「次へ」をクリックします。

Ⅲ-6.
インストール形式で「標準インストール」を選択し、「次へ」をクリックします。

Ⅲ-7.
「インストール」をクリックします。

Ⅲ-8.
インストール完了まで待ちます。

Ⅲ-9.
「終了」をクリックします。


◆ 参考文献

脆弱性(ぜいじゃくせい)とは?|どんな危険があるの?|基礎知識|国民のための情報セキュリティサイト (soumu.go.jp)
【OWASP ZAP】インストールと基本的な使い方【Web脆弱性診断】 | チグサウェブ (chigusa-web.com)
OWASP ZAPを使ったWebシステムの脆弱性診断【前編】|Solution – ソリューション|株式会社イージェーワークス (ejworks.com)

Docker Desktopのガイドを触る (4:Publish your image)

 本記事は、Windows11にインストールしたコンテナ型仮想化環境プラットフォーム「Docker Desktop」のガイド『Run Docker Hub images 』を確認したメモです。
 Docker Desktopのインストールはこちらの記事、その他の各ガイドの記事は以下となります。
 ・What is a Container?
 ・How do I run a container?
 ・Run Docker Hub images

 Docker社が提供するDockerイメージを共有するためのクラウドサービス「Docker Hub」が存在し、様々なベンダーや個人がコンテナイメージを提供していることは前回の記事で述べました。

 今回のガイドでは、Docker Hubへのコンテナイメージのアップロードを行っていきます。


◆ ガイド4:Publish your image (2023年7月時点)

1.
Docker Desktopの左メニュー「Lerning Center」を選択し、「Publish your image」をクリックします。
右側に説明文が表示されます。本ガイドを進めるには少なくとも1つのコンテナイメージが必要で、ない場合は「welcome-to-docker」イメージを検索して「Pull」ボタンをクリックします、とのことです。

2.
画面上部の検索バーをクリックし、検索ウィンドウで「welcome-to-docker」と入力します。「Images」タブにて「welcome-to-docker」公式イメージの「Pull」ボタンをクリックします。

3.
画面右側ガイドの「Next」ボタンをクリックし、次のステップを見てみましょう。

4.
画面右上の「Sign in」を押してDocker Hubにサインインするか、新規アカウントを作成しましょう、といった内容が表示されますので、右上の「Sign in」をクリックします。

5.
Webブラウザが立ち上がり、Dockerのログイン画面が開きます。ここでは新規にアカウントを作成するため、画面右上の「Sign Up」をクリックします。

6.
「Username」「Email」「Password」を入力し、サービス規約・プライバシーポリシー等の同意、私はロボットではありませんのチェックを入れて「Sign Up」ボタンをクリックします。
ここではプロダクトのアップデート等のアナウンスにもチェックを入れていますが、おそらく必須ではありません。また、Usernameに大文字を含めていましたが、この後は小文字になるよう(恐らく大文字・小文字を区別しない?)です。

7.
項番6で設定したUsernameまたはEmailを入力し、「Continue」ボタンをクリックします。

8.
Emailアドレスが正しいことを確認の上、項番6で設定したPasswordを入力して「Continue」ボタンをクリックします。

9.
サインインに成功するとDocker Desktopを開こうとするので、「開く」ボタンをクリックします。

10.
画面右上の「Sign in」がUsernameに変わっていることを確認し、「Next」ボタンをクリックし、次のステップを見てみましょう。

11.
Docker Hubでのイメージ公開前に、自分のイメージであることを示すためにDockerイメージをリネーム(自身の名前を含む別名を付ける)しましょう、といった内容が表示されます。

12.
リネームのための ”docker tag” コマンドを「Copy」ボタンをクリックしてコピーします。

13.
コピーしたコマンドは以下の通りとなります。
 docker tag docker/welcome-to-docker YOUR-USERNAME/welcome-to-docker
 (docker tag [別名を付与したいDockerイメージ名 or ID] [付与したい別名])

こちらについて ”YOUR-USERNAME” の部分を項番6で設定した自身のUsernameに変更します。
 docker tag docker/welcome-to-docker kageroulab/welcome-to-docker
変更したコマンドをコマンドプロンプトで実行します。

14.
実行結果は以下のようになり、コマンドプロンプト上では特に何も返されません。

15.
「Next」ボタンをクリックし、次のステップを見てみましょう。

16.
イメージを選択して「Push to Hub」を選択しましょう、といった内容が表示されます。

17.
「Images」メニューを選択し、先程「kageroulab/welcome-to-docker」とタグをつけたイメージの「…」から「Push to Hub」をクリックします。

18.
Docker Hubにアップロードされているようですのでしばらく待ちます。

19.
画面右側のガイドの続きにて、Docker Hubに移動してリポジトリを見てみましょう、といった内容が表示されています。「Docker Hub」リンクをクリックします。

20.
Webブラウザが立ち上がり、Docker Hubのサイトが表示されます。先程作成したDockerのアカウントでサインインできますので、「Sign in」リンクをクリックします。

21.
コンテナイメージがアップされていることがわかります。右側に「Public」とあるのでこのイメージは公開されています。

22.
Hubにアップロードしたイメージは、「Images」メニューからのHubタブからも確認ができます。

23.
画面右側ガイドの「Next」ボタンをクリックし、次のステップを見てみましょう。

24.
プログラム言語固有のガイドリンクが表示されますので、全体的なDocker Desktopのガイドとしてはこれで全てとなります。お疲れさまでした。


◆ 参考文献

docker tagコマンドの使い方(実例で解説) | めもたんす (memotansu.jp)

Docker Desktopのガイドを触る (3:Run Docker Hub images)

 本記事は、Windows11にインストールしたコンテナ型仮想化環境プラットフォーム「Docker Desktop」のガイド『Run Docker Hub images 』を確認したメモです。
 Docker Desktopのインストールはこちらの記事、『What is a container?』のガイドの確認はこちらの記事、『How do I run a container?』のガイドの確認はこちらの記事で実施しています。

 Dockerコンテナを作成するためのコンテナイメージについては、前回(How do I run a container?)で紹介したDockerfileから作成する方法以外にも、Docker Hubからコンテナイメージを取得して利用することもできます。
 Docker HubはDocker社が提供する、Dockerイメージを共有するためのクラウドサービスです。こちらには様々なベンダーや個人がコンテナイメージを提供しております。例えば本ブログのベースとなるWordPressが予めインストールされたコンテナイメージを、WordPress公式が公開していたりします(イメージはこちら)。

 今回のガイドでは、ガイド用のwelcome-to-dockerイメージをDocker Hubからダウンロードして起動するまでを行います。


◆ ガイド3:Run Docker Hub images (2023年7月時点)

1.
Docker Desktopの左メニュー「Lerning Center」を選択し、「Run Docker Hub images」をクリックします。
右側に説明文が表示されます。ウィンドウ上部の検索バーでDocker Hubからイメージを検索できるようです。試しにwelcome-to-dockerイメージを検索してみましょう。

2.
ウィンドウ上部の検索バーをクリックします。

3.
「Images」タブをクリックします。

4.
画面上部の検索ボックスに「welcome-to-docker」と入れてみましょう。検索結果として52個のイメージが表示されます。

6.
一度検索を閉じ、右側で「Next」ボタンをクリックして次のガイドに進んでみましょう。

7.
「検索したDockerイメージについて「Run」を選択しましょう。ポートは8090番を指定しましょう」といったような内容が表示されます。

8.
再度「welcome-to-docker」イメージを検索します。
認証マークの付いた「welcome-to-docer」の「Run」ボタンをクリックします。

9.
「Optional settings」を展開します。

10.
Ports欄で『8090』を指定し、「Run」ボタンをクリックします。

11.
Docker Desktopの画面右側ガイドで「Next」ボタンをクリックします。

12.
画面右側のガイドでは、Containersメニューからコンテナを開いてみましょうといった内容が表示されます。Containersメニューにて、先程指定した8090番からコンテナの80番にフォワーディングされているコンテナのPort(s)列をクリックしてみましょう。

13.
正常にコンテナのアプリケーションにアクセスができましたら、以下の画面となります。

14.
画面右側ガイドの「Next」ボタンをクリックして次のガイドに進んでみましょう。

15.
次のガイドとして、「Publish your image」を勧められますので、次回実施しようと思います。
今日はここまでとします、お疲れさまでした。


◆ 参考文献

【入門】Docker Hubとは?概要と仕組み、基本的な使い方を解説 – カゴヤのサーバー研究室 (kagoya.jp)

Docker Desktopのガイドを触る (2:How do I run a container?)

 本記事は、Windows11にインストールしたコンテナ型仮想化環境プラットフォーム「Docker Desktop」のガイド『How do I run a container? 』を確認したメモです。
 Docker Desktopのインストールはこちらの記事で、『What is a container?』のガイドの確認はこちらの記事で実施しています。

 DockerはDockerfileというコンテナイメージの設計図を用いてコンテナイメージを作成できます。Dockerfileには作成元とするイメージの指定やファイルの配置、インストールするソフトなどの情報を記載します。これによって同じ構成のコンテナイメージを複数作成したり、他のDockerエンジン上でも作成することが容易になります。このように、インフラの構成をコード化することをInfrastructure as Code(IaC)といいます。

 今回のガイド『How do I run a container』ではあらかじめ用意されたDockerfileからDockerイメージを作成し、Dockerコンテナを実行するまでを試します。なおDockerfileはGitHubからダウンロードするため、Gitを予めインストールする必要があります。Gitのインストールはこちらの記事を参考にしていただければと幸いです。


◆ ガイド2:How do I run a container? (2023年7月時点)

1.
Docker Desktopの左メニュー「Lerning Center」を選択し、「How do I run a container?」をクリックします。

2.
右側に「Dockerfileとサンプルアプリケーションを利用してDockerイメージを作成することを行いましょう」といったような内容が表示されます。
「Next」ボタンをクリックし、次のステップを見てみましょう。

3.
GitHubからリポジトリを複製します。Gitコマンドが利用できる必要がありますので、Gitをインストールしていない場合はこちらの記事を参考にインストールしてもらえればと思います。
一度、GitHubのURLを確認してみましょう。

4.
GitHubのURLを開くと以下の画像のようになっています。Dockerfileやその他のファイルが存在しています。

5.
表示されている ”git clone” コマンドを「Copy」ボタンでコピーします。

6.
コピーした ”git clone” コマンドを実行し、リポジトリを複製します。
 git clone https://github.com/docker/welcome-to-docker
 ( git clone [複製したいリポジトリ] )

7.
カレントディレクトリ以下に「welcome-to-docker」フォルダができました。

8.
「welcome-to-docker」フォルダ内を参照すると、GitHub上のファイルが複製されていることがわかります。Dockerfileをテキストエディタで開いてみます。

9.
こちらがDockerfileの中身となります。ファイルコピーや必要なソフトウェアのインストール処理を定義していることが見て取れますね。

10.
「Next」ボタンをクリックし、次のステップを見てみましょう。

11.
「DockerfileをIDE(統合開発環境:Visual StudioやEclipseなど)で開いてみましょう。またDockerfileは必要に応じて自分で作成します」といったことが書いてあります。
今回はGitHubから複製したサンプルを利用します。中身としては先程テキストエディタで開いた通りです。そのまま「Next」ボタンをクリックし、次のステップを見てみましょう。

12.
「プロジェクトフォルダでCLI経由で ”docker build” コマンドによりイメージをビルドできる」といったことが書いてあります。
表示されている ”docker build” コマンドを「Copy」ボタンでコピーします。

13.
複製した「welcome-to-docker」フォルダ(リポジトリ)に移動し、コピーした ”docker build” コマンドを実行します。
 docker build -t welcome-to-docker .
 ( docker build -t [作成したイメージの名前] [ビルドコンテキスト(Dockerfileに付随する一連のファイル)のパス] )

14.
DockerfileからDockerイメージがビルドされるまでしばらく待ちます。

15.
ビルドが完了したら、Docker Desktopの画面に戻ります。

16.
「Next」ボタンをクリックし、次のステップを見てみましょう。

17.
「ビルドが完了すると、Imagesメニューにイメージが追加されます。実行アイコンをクリックすることでコンテナを実行できます。オプション設定でポート番号を指定してください。」といったことが書いてあります。

18.
Imagesメニューを開き、今回作成したDockerイメージ「welcome-to-docker」の実行アイコンをクリックします。

19.
「Optional settings」を展開します。

20.
ポート番号を指定します。項番17の説明にて8089番が良いといったことが書いてあったので、「8089」を指定し、「Run」ボタンをクリックします。

21.
Containersメニューに移動し、新たにコンテナが起動します。
右側のガイドにて「Next」ボタンをクリックし、次のステップを見てみましょう。

22.
コンテナが起動したので、フォワーディングされたポートのリンクをクリックしてコンテナが実際に稼働しているか見てみましょう。

23.
以下の画面が出れば成功です。

24.
右側のガイドにて「Next」ボタンをクリックし、次のステップを見てみましょう。

25.
次のガイドとして、「Run Docker Hub images」を勧められますので、次回実施しようと思います。
今日はここまでとします、お疲れさまでした。


◆ 参考文献

【Docker】Dockerfileとは|書き方・コマンド一覧・イメージ作成手順を徹底解説 (di-acc2.com)
Infrastructure as Code(IaC)とは?インフラをコー…|Udemy メディア (benesse.co.jp)
docker build | Docker ドキュメント (matsuand.github.io)
【docker】ビルドコンテキスト(build context)とは? – 自由気ままに書いちゃおう (guri2o1667.work)

Docker Desktopのガイドを触る (1:What is a container?)

 本記事は、Windows11にインストールしたコンテナ型仮想化環境プラットフォーム「Docker Desktop」のガイド『What is a container?』を確認したメモです。
 Docker Desktopのインストールはこちらの記事で実施しています。

 Dockerはコンテナ型仮想化環境プラットフォームです。Dockerコンテナにアクセスする際は、Dockerコンテナが動作するホストマシンの特定ポートとDockerコンテナの特定ポートを紐づける(ポートフォワーディング)ことで、ホストマシンのポートを通してDockerコンテナにアクセスを行います。


◆ ガイド1:What is a container? (2023年7月時点)

1.
Docker Desktopをインストール直後に起動するとこのような画面になり、「What is a container?」「How do I run a container?」「Run Docker Hub images」「Publish your image」の4つのガイドが表示されます。
このガイドは左メニューの「Lerning Center」を選択しても表示されます。
今回は「What is a container?」を選択します。

2.
右側にガイド表示スペースが出てきます。ガイドが表示されるまで少々待ちます。

3.
右側にガイドが表示されました。最初のステップとして「welcomeコンテナを立ち上げたのでまずは見てみましょう。」といったような内容が書かれています。

4.
既に前項の画面キャプチャでも出ていますが、左側のContainersメニューをクリックすると、Docker Desktop上で稼働するコンテナの一覧が表示されます。一覧の中にガイドによって作成されたwelcomeコンテナも存在します。

5.
右側のガイドにて「Next」ボタンをクリックし、次のステップを見てみましょう。

6.
ポート列の「8088:80」をクリックし、シンプルなWebアプリケーションが動作していることを確認しましょう、といった内容が書かれています。
「8088:80」をクリックします。

7.
シンプルなWebアプリケーションが表示されました。URLバーには「localhost:8088」となっています。ホストマシンの8088番ポートにアクセスすることで、これに紐づけられたコンテナの80番ポートにアクセスをしてWebアプリケーションが表示される、といった流れです。

8.
右側のガイドにて「Next」ボタンをクリックし、次のステップを見てみましょう。

9.
Docker Desktop上でコンテナを選択し、コンテナ内のディレクトリ・ファイルを参照することができるようです。
コンテナ一覧のwelcomeコンテナをクリックします。

10.
「Files」タブを選択することで、コンテナ内のディレクトリ・ファイル一覧が参照できます。
右側のガイドにて「Next」ボタンをクリックし、次のステップを見てみましょう。

11.
コンテナは停止アイコンを押すまで動き続けるようです。
画面上部のwelcomeコンテナの停止アイコンをクリックします。

12.
コンテナが停止したら(前項の画面で停止アイコンが灰色になり、実行アイコンが有効になります)、先程の「localhost:8088」にアクセスしてみましょう。停止していることがわかるかと思います。

13.
右側のガイドにて「Next」ボタンをクリックします。

14.
次のガイドとして、「How do I run a container?」を勧められますので、次回実施しようと思います。
今日はここまでとします、お疲れさまでした。


◆ 参考文献

[Docker]Dockerのポート番号とIPアドレスについて | コラム | 東京・千代田区にあるリピート率90%以上の完全独立系ITシステム会社の株式会社ディスタント・ビュー (distant-view.co.jp)

Windows11にDocker Desktop をインストールする

 本記事は、Windows11にコンテナ型仮想化環境プラットフォームであるDocker Desktopをインストールした手順のメモです。

 仮想化とはハードウェアリソース(CPU、メモリ、ディスク等)をソフトウェアで統合・分割し、リソースを有効的に使う技術です。例えばCPU8コア、メモリ32GB、ハードディスク256GBの物理マシンを、CPU4コア、メモリ16GB、ハードディスク128GBに分割した2台の仮想マシンとして使う、などです(実際には物理マシンや仮想化ソフトウェアを管理するOSのリソースを考慮する必要があるかと思います)。

 仮想化には「ハイパーバイザー型」「ホスト型」「コンテナ型」といった種類が存在します。

 「ハイパーバイザー型」は、ハードウェアの上にハイパーバイザーという仮想化基盤が存在し、その上にゲストOS・アプリを合わせた仮想マシンが存在する、というものです。そのうちの1台はハイパーバイザーおよび他の仮想マシンを管理するためのマシンとなります。代表的なハイパーバイザー型仮想化基盤のソフトウェアとしては、WindowsServerに搭載される『Hyper-V』があります。

 「ホスト型」はまずハードウェアの上にホストOSが存在し、ホストOSにインストールされたホスト型仮想化基盤が存在します。その上にゲストOS・アプリを合わせた仮想マシンが存在する、というものです。代表的なホスト型仮想化基盤のソフトウェアとしてはOracleの『VirtualBox』があります。

 「コンテナ型」はまずハードウェアの上にホストOSが存在し、ホストOSにインストールされたコンテナ型仮想化基盤(コンテナエンジン)が存在します、その上にコンテナOS・アプリを合わせたコンテナが存在する、というものです。代表的なコンテナ型仮想化基盤のソフトウェアとして、今回インストールする『Docker』が存在します。

 コンテナ型のメリットは今後DockerDesktopのチュートリアルも記事にしていくので、そこで追々取り上げたいと思いますが、1つのメリットとしてはコンテナOSはホストOSとカーネル機能を共有するため、コンテナOSはカーネルが不要となりリソースを節約できる、作成・起動が早くなるというメリットがあるかと思います。

※ 以上、素人解釈なので間違いあればコメントでご指摘いただけますと幸いです。


◆ Docker Desktopインストール手順 (2023年6月時点)

1.
Dockerの公式サイト(https://www.docker.com/)にアクセスし、「Download Docker Desktop」をクリックします。

2.
インストール用のexeファイルがダウンロードされるので、実行します。

3.
Docker Desktopのインストーラーが起動します。最初に必要なファイルの確認が行われるので、しばらく待ちます。

4.
デスクトップにショートカットを作成したい場合はチェックを入れ、「OK」ボタンをクリックします。

5.
ファイルの展開が行われますので、しばらく待ちます。

6.
インストールが完了しました。「Close and log out」をクリックします。

7.
No.4でチェックを入れていると、以下のショートカットがデスクトップに作成されます。こちらをダブルクリックしてDocker Desktopを起動します。

8.
Docker Desktopのサービスアグリーメントが表示されます。「Accept」ボタンをクリックします。

9.
職種とDockerの利用理由を聞かれますので、それぞれ選択して「Continue」ボタンをクリックします。

10.
以下の画面が出れば起動成功です。お疲れさまでした。


◆ 参考文献

Dockerとは?コンテナ仮想化技術のメリット|Fresopiya

Windows11にGitをインストールする

 本記事は、Windows11に分散型バージョン管理システムであるGitをインストールした手順のメモです。

 バージョン管理システムは、プログラムのソースコードを含むファイルの変更履歴を記録・追跡するシステムです。変更履歴をリポジトリという入れ物で管理し、コミットにより変更履歴を記録します。またブランチという変更履歴を分岐させる機能によって、プログラムの複数の変更を並行して履歴管理ができます。ブランチによって並行して行われた変更は、マージによって一つにまとめることができます。

 リポジトリには集中型と分散型があり、1つのリポジトリに各利用者がアクセスして利用するシステムを集中型、1つの集約用リポジトリからコピーしたリポジトリを主に利用するシステムを分散型といいます。集中型バージョン管理システムは例えばApache Subversionがあり、分散型バージョン管理システムは例えば今回インストールするGitがあります。


※ 以上、素人解釈なので間違いあればコメントでご指摘いただけますと幸いです。


◆ Gitインストール手順 (2023年6月時点)

以下のサイトがインストール中の各選択肢が詳細に説明されていて、非常に参考になります。むしろ正直こちらのサイトを見て頂ければ良いくらいです。
 https://www.curict.com/item/60/60bfe0e.html

インストールまでに行う設定が多いですが、頑張りましょう。

※ 本手順は2023年6月時点のものです。

1.
Gitの公式サイト(https://git-scm.com/)にアクセスし、右下の「Download for Windows」をクリックします。

2.
「64-bit Git for Windows Setup.」リンクをクリックします。

3.
インストール用のexeファイルがダウンロードされるので起動します。

4.
インストーラーが立ち上がり、ライセンスの説明が表示されます。
「Next」ボタンをクリックします。

5.
インストール先を選択します。デフォルトでは ”C:\Program Files\Git” になりますが、そのままで特に問題ないかと思います。
「Next」をクリックします。

6.
インストールするコンポーネントの選択画面となります。デスクトップにアイコンを作成する、日次でのアップデート確認を行うなどはデフォルトではチェックが外れています。今回はそのままデフォルトの状態で「Next」をクリックします。

7.
スタートメニューに表示される際の表示先のフォルダーを指定します。デフォルトではGitフォルダが作成され、その中に格納されます。株のチェックを入れることでフォルダを作成しないこともできるようです。
今回はデフォルトのまま「Next」をクリックします。

8.
テキストエディターの起動を伴うコマンドを実行した際に実行するテキストエディターを指定する画面となります。デフォルトではVimが起動するようになっているようです。
今回はそのまま「Next」をクリックします。

9.
デフォルトのブランチ名を指定します。デフォルトの「Let Git decide」では『master』がデフォルトブランチ名になりますが、変更することも可能のようです。
ここではデフォルトのまま「Next」をクリックします。

10.
環境変数PATHに追加するフォルダを指定します。デフォルトでは「Git from the command line and also from 3rd-party software」が指定されており、最低限コマンドプロンプトやPowrShellでGitコマンドを利用したい場合はこちらが良いようです。

「Use Git from Git Bash only」ではGit BashというアプリケーションでしかGitコマンドを使えず、反対に一番下の「Use Git and optional Unix tools from the Command Prompt」ではいくつか異なる意味で同じコマンド名を持つという重複が発生してしまうようです。

ここではデフォルトのまま「Next」をクリックします。

11.
リポジトリに接続する際に利用するOpenSSHをGitとともにインストールするか、すでにインストールしている場合にそれを使うかを選択します。すでにインストールしているものを使用する場合は、環境変数PATHにパスを追加しておく必要があるようです。
ここでは新たにインストールするために「Use bundled OpenSSH」を選択して「Next」をクリックします。

12.
リポジトリにHTTPSで接続する際のルート証明書を、OpenSSLのものを利用するかWindowsの証明書ストアを利用するかを選択します。独自の証明書を発行、Windows証明書ストアに登録して管理しているような環境で下を選択するようですね。
ここではOpenSSLのものを利用する「Use the OpenSSL library」を選択して「Next」をクリックします。

13.
改行コードを変換するかどうかの選択を行います。CRLFはWindowsで、LFはUNIX系で使われる改行コードで、これをどのように統一するかを選択します。選択肢の上から順に以下のような設定です。
 ① チェックアウト時に ”CRLF改行” 、コミット時に ”LF改行” にそれぞれ統一変換
 ② チェックアウト時はそのまま、コミット時に ”LF改行” にそれぞれ変換
 ③ チェックアウト時、コミット時それぞれ変換しない

ここでは①相当の「Checkout Windows-style, commit Unix-style line endings」を選択して「Next」をクリックします。

14.
Git Bashのターミナルについて、MinTTYというターミナルを使用するかWindowsデフォルトのターミナルを使用するかを選択します。
ここもよくわからないのでデフォルトの「Use MinTTY (the default terminal of MSYS2)」を選択しました。「Next」をクリックします。

15.
”git pull” コマンドを実行した際の挙動を選択します。
私はGit初心者で意味を分かっていないのでとりあえずデフォルトを選びました。意味は追々…。rebaseの意味は以下が参考になりそうです。
 知っていたら実務で最強! git pullとgit pull –rebaseの違い – Qiita

選択後、「Next」をクリックします。

16.
資格情報マネージャーをインストールするかどうかを選択します。リモートリポジトリに接続する際の認証を省けるようです。
インストールするために「Git Credential Manager」を選択して、「Next」をクリックします。

17.
追加オプションの設定有無を確認します。デフォルトでは上の「Enable file system caching」という、Git関連のファイルをキャッシュして動作を高速にするオプションにのみチェックが入っています。下のオプションはシンボリックリンクを利用する場合にチェックを入れるようです。
ここではデフォルトのまま「Next」をクリックします。

18.
実験機能のオプションを利用するかどうかの画面となります。
とりあえず実験機能は入れないまま、「Install」をクリックします。

19.
インストール完了まで待ちます。

20.
インストールが完了したら以下の画面となります。「Finish」をクリックします。

21.
完了画面で「View Release Notes」にチェックを入れていると、Webブラウザが立ち上がり以下のような画面が表示されます。

22.
正常にインストールがされたかを確認します。コマンドプロンプトを開き、以下のバージョン確認コマンドを実行します。バージョンが返されれば成功です。お疲れさまでした。

git -v


◆ 参考文献

WindowsにGitをインストールする手順(2023年07月更新) (curict.com)
知っていたら実務で最強! git pullとgit pull –rebaseの違い – Qiita