minikubeを使用して、ローカル環境でkubernetesを動かしてみる

2023年6月5日

minikubeとは?

minikubeはローカル環境でkubernetesを動かすためのツールです。minikubeを使用することで簡単のkubernetesを試したりすることができます。

インストール

minikubeのインストールを行う前にVMをインストールしておきます。今回はインストール済みなのでスキップしていきます。

macOSだとbrewコマンドでインストールするか、直接バイナリーダウンロードして、minikubeの実行パスを登録する方法の二つあります。今回はbrewコマンドを使用してインストールします。

$ brew cask install minikube

以下のコマンドを実行すると、minikubeを起動することができます。

$ minikube start

実行して、以下の画面が表示されれば起動成功です。

🎉  minikube 1.9.2 is available! Download it: https://github.com/kubernetes/minikube/releases/tag/v1.9.2
💡  To disable this notice, run: 'minikube config set WantUpdateNotification false'

🙄  minikube v1.5.2 on Darwin 10.15.3
💡  Tip: Use 'minikube start -p <name>' to create a new cluster, or 'minikube delete' to delete this one.
🔄  Starting existing hyperkit VM for "minikube" ...
⌛  Waiting for the host to be provisioned ...
🐳  Preparing Kubernetes v1.16.2 on Docker '18.09.9' ...
🔄  Relaunching Kubernetes using kubeadm ...
⌛  Waiting for: apiserver
🏄  Done! kubectl is now configured to use "minikube"

minikubeが起動できたので、早速mysqlをminikube上で動かしてみようと思う。以下のファイルをmysql.yamlとして作成する。

apiVersion: v1
kind: Pod
metadata:
  name: mysql
  labels:
    app: mysql
spec:
  containers:
  - image: mysql
    name: mysql
    env:
      - name: MYSQL_ROOT_PASSWORD
        value: password 
    ports:
      - containerPort: 3306
        name: mysql

kubectlコマンドを使用して、mysqlのPodが作成します。実行すると、Podが作成されます。

$ kubectl create -f mysql.yaml
pod/mysql created

作成したmysqlのコンテナにログインしてみます。

$ kubectl exec -it mysql bash

ログイン後、mysqlにログインしてみます。

$ mysql -uroot -ppassword

ログインできたかと思います。

今回はローカル環境でkubernetesを動かす方法を説明しました。
これでローカル環境でもkubernetesを使用して作業することができます。