oc-k8s/README.md
2025-01-22 15:19:29 +01:00

2.2 KiB

This package defines an Helm chart for kubernetes based opencloud services deployment.

It can be used to fully deploy opencloud in a development/lighweight kubernetes deployment, for quick testing or to ease opencloud dependencies (dex, mongo, mongo-express, ...) deployment.

Kind (https://kind.sigs.k8s.io/) is used here as a lightweight kubernetes deployment. Obviously, any kubenetes compliant environment is a legitimate target.

Locally built microservices deployment procedure

Clone the repository

git clone https://cloud.o-forge.io/plm/oc-k8s.git

Install kind

Follow instructions here https://kind.sigs.k8s.io/

Install helm

Download suitable helm client here https://helm.sh/docs/intro/install/

Fire up a kind cluster

Execute following script to create a single node development k8s cluster

create_kind_cluster.sh

It will create a opencloud docker container running kubernetes services.

Clone all the microservices repositories taking part of the opencloud environment

Execute following script to clone all the needed parts:

clone_opencloud_microservices.sh

Build everything

You need to build and publish all the opencloud microservices images in the kind cluster before deploying the Helm package.

Proceed as following:

build_opencloud_microservices.sh

Deploy the opencloud chart

install_development.sh

Feel free to modify/create a new opencloud/dev-values.yaml. Provided setup should work out of the box, but is not suitable for production usage.

Hostname settings

Edit your /etc/hosts file, and add following line:

127.0.0.1 beta.opencloud.com

Done

Everything should be operational now, go to http://beta.opencloud.com and enjoy the ride

Prebuilt microservices deployment procedure

TODO

First steps

Go to http://beta.opencloud.com/users

Log in using default user/password combo ldapadmin/ldapadmin

Create a new user, or change the default one

Go to http://beta.opencloud.com

Log in using your fresh credentials

Do stuff

You can go to http://beta.opencloud.com/mongoexpress

... for mongo express web client access (default login/password is test/testme)

You can go to http://localhost/dashboard/

... for access to Traefik reverse proxy front-end