Skip to content

saitamau-maximum/maxicloud

Repository files navigation

MaxiCloud

サークル会員向けのPaaSです。

Deployment

バックエンド

ローカルでの開発にはKindを使用してKubernetesクラスタを構築します。

./hack/setup.sh

Ingress-Nginxをインストールします。

kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.15.1/deploy/static/provider/kind/deploy.yaml

DockerイメージのビルドとPush

make docker-build docker-push

環境変数 を設定します

Manifestの適用

# CRDをクラスタに適用
make install
# Manifestsをクラスタに適用
make deploy

Podの状態を確認します。

kubectl get pods -n maxicloud-system

以下の二つがRunningとなっていればOKです。

NAME                                            READY   STATUS    RESTARTS   AGE
maxicloud-controller-manager-58f846777c-2mlr5   1/1     Running   0          57s
maxicloud-gateway-cfb744f4d-pw6cp               1/1     Running   0          57s

変更を反映させるためのコマンド

# protoを変更したとき
# buf generateを実行するには./dashboardでpnpm installしておく必要があります。
buf generate
# CRDの定義を変更したとき
make generate
# Kubebuilderのマーカを変更したとき
make manifests
# Goのコードを変更したとき
make docker-build docker-push
# イメージをビルドしてPushした後、変更を反映させるためのコマンド
kubectl rollout restart deployment/maxicloud-controller-manager maxicloud-gateway -n maxicloud-system
# 上全てをまとめてやるコマンド
make release

ダッシュボード

ダッシュボードは/dashboardにあります。以下のコマンドで起動できます。

cd dashboard
pnpm install
pnpm dev

GitHub Webhookの受け取り方

smee-clientを使用して、ローカルにWebhookを転送します

npm install --global smee-client

smee.ioにアクセスしてWebhookを受け取るURLを作成してください。

smee --url <作成したURL> --target http://localtest.me:8080/github/webhook

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors