はじめに
今回は15Stepで習得 Dockerから入るKubernetes コンテナ開発からK8s本番運用までを
参考にWindows10の環境下にVirtualBox+Vagrantを構築して、さらにその上にUbuntsを起動させ、
そのUbuntsの上にdocker+Kubernetes(正確にはminikube)の実行環境を構築。
なんでこんなに複雑かっていうと、書籍によると
・windowsでもMacでも動作するVagrantとVirtualBoxの仮想マシン上でLinuxサーバを動作させ
そこの上でdockerとminikubeを動かすので環境がキチンと揃う
・仮想マシン上のメモリ使用が少なく、安定する
・各種ソフトウェアをWindows上、Mac上にインストールしないため、PCのソフトウェア環境をクリーンに保てる
…だそうだ。なるほど、これはナイスですね。
確かに、、、この環境だと、windows上でdocker+minikubeしたいなら
ソフトウェア | 概要 |
---|---|
Docker Toolbox | Dockerの実行環境 |
VirtualBox | Dockerを実行させるために必要 |
Vagrant | VirtualBoxのフロントエンドとして使用 |
chocolatey | win版のパッケージマネージャー。curlとkubectlをインストールするときに使用 |
kubectl | コントローラ |
Minikube | minikubeの実行環境 |
が、
ソフトウェア | 概要 |
---|---|
VirtualBox | Dockerを実行させるために必要 |
Vagrant | VirtualBoxのフロントエンドとして使用 |
git | Docker+Minikubeを構築するためのVagrantファイルを入手するために使用 |
で済むのでPC環境をクリーンに保てるという理屈はよくわかる。
動作環境
・Windows10 Home(64bit)
手順(概要)
- VirtualBoxのインストール
- Vagrantのインストール
- Git for Windowsのインストール
- Vagrantファイル(docker+minikube)の入手&実行
- 動作確認
手順(詳細)
1. VirtualBoxのインストール
実際は前の記事でDockerToolBoxインストール時についでインストールされたのですが
VirtualBoxのバージョンアップしたときにインストールしなおした感じに名たのでその様子をUPします。
リンク先では自動的にダウンロードが始まる。ダウンロードが完了したらexeファイルを起動
2. Vagrantインストール
ダウンロードサイト(https://www.vagrantup.com/downloads.html)へ
アクセスして、win10(64bit)のインストーラ入手
ここで突然windows Defenderが反応するが、落ち着いて[実行]
…で、インストール完了
3.Git for Windowsのインストール
ダウンロードサイト(https://git-scm.com/download/win)へアクセスしてダウンロード。
checkout as-is, commit as-is を選択して、[Next]クリック
…で、インストール完了
4. Vagrantファイル(docker+minikube)の実行
windows検索窓から"git"入力して、"git for windows"起動
githubからdocker+minikubeのvagrantファイルを入手
※このURLは書籍購入した人に公開している感じなのでさすがに隠した。。。
Vagrantファイルの実行。docker&minikubeのインストールはこれだけ。さすがvagrant。
$ vagrant up
プロンプトが戻ってきたら、実行環境(=docker+minikubeのインストールされたUbunts)へログイン
$ vagrant ssh
5.動作確認
Dockerのバージョンを確認してみる
$ docker version
minikubeを起動する。
sudo minikube start
minikube上のノードの状態とpodの様子を確認。
minikubeという名前のノードが稼働しており、
minikubeにまつわる様々なpodが動作していることが確認できる。
$ kubectl get node ←ノードの状態確認
$ kubectl get pod --all-namespeces ←ポッドの状態確認
ここまでで、minikubeが動くことが確認できたので、ここからじっくりと
dockerのminikubeの動作がどんなもんか本を読みながら試していこうと思う。