kompose
docker-composeで定義ファイルをKubernetesのマニフェストに変換するツールです。
https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/ external_link
インストール
$ curl -L https://github.com/kubernetes/kompose/releases/download/v1.21.0/kompose-linux-amd64 -o kompose $ chmod +x kompose $ sudo mv ./kompose /usr/local/bin/kompose
コンバート
$ kompose --file 00_growi_compose.yml convert
Deploy
<komposeコマンドでcomposeファイルから直接Deployする場合> ※kubectl config view
で確認したクラスタURLを--server
に指定する
$ kompose --file 00_growi_compose.yml --server https://172.16.0.81:443 up
<kubectl apply でコンバートしたファイルを指定してDeployする場合>
kubectl apply -f growitest-service.yaml,elasticsearchtest-deployment.yaml,elasticsearchtest-data-persistentvolumeclaim.yaml,growitest-deployment.yaml,growitest-data-persistentvolumeclaim.yaml,mongotest-deployment.yaml,mongotest-configdb-persistentvolumeclaim.yaml,mongotest-db-persistentvolumeclaim.yaml
※Growiで試してみたがうまくいかず・・
Dockerのlinks:
など、Kubernetesの仕組み的に?変換できないところもありそうなので、あくまでもマニフェストを作るための補助的な役割にとどまるかも。