Helm で Nextcloud を構築する(Kubernetes)

Helm とは

Kubernetes 用のパッケージマネージャーです。

Kubernetes と同じく CNCF によって開発が進められています。

Artifact Hub で各パッケージが公開されています。

Nextcloud をインストール


helm repo add nextcloud https://nextcloud.github.io/helm/
helm install my-release nextcloud/nextcloud

(加えて DB 設定などあった気がするが、画面に表示されたとおりに実行すれば OK) 

これで Kubernetes 上で Nextcloud が動作するようです。

しかし、このままではローカルであればポートフォワードを用いて接続できますが、外から接続することができません。(Minikube を使ってローカルで実行している場合はこれでいける)


GKE(GCP)や Oracle Cloud ではまず IP を作成する必要があります。(Oracle Cloud でやろうとして LB が作成されず詰まったポイント、普通 Oracle Cloud の場合なんて書いてないですからね…)

先程の release を 3 箇所変更します。

service.type=LoadBalancer

service.loadBalancerIP=<作成した IP>

nextcloud.host=<作成した IP、または Nextcloud に設定したいドメイン>

helm upgrade my-release \
--set service.type=LoadBalancer,service.loadBalancerIP=<IP>,nextcloud.host=<IP or ドメイン> \
nextcloud/nextcloud

しばらくするとロードバランサーが作成され、 http://<IP or domain>:8080 にアクセスできるようになります。

ログイン情報は変更していないため、デフォルトの

ユーザー名: admin

パスワード: changeme

です。


もしうまく行かなかった場合の、エラー確認方法

kubectl describe deployments my-release-nextcloud

IP の確認など(Service の確認)

kubectl get services


ストレージ設定周りなど本格的に使っていくには必要な設定がありそうですが、ここから Kubernetes を少しずつ学んでいきます。

コメント