Skip to content

Commit

Permalink
Merge pull request #401 from kubero-dev/feature/improve-docker-compose-2
Browse files Browse the repository at this point in the history
improve docker compose
  • Loading branch information
mms-gianni authored Sep 9, 2024
2 parents 27365f1 + b7d0496 commit 35063f7
Show file tree
Hide file tree
Showing 2 changed files with 51 additions and 17 deletions.
40 changes: 40 additions & 0 deletions docker-compose.kind.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
services:
# Kubero usually runs in a Kubernetes cluster in the kubero namespace
# If you want to run it locally, you can use kind to create a local Kubernetes cluster
# 1) Find your cluster name [YOUR_CLUSTER_NAME] by running `kind get clusters`
# 2) Set the cluster name in the YOUR_CLUSTER_NAME environment variable `export YOUR_CLUSTER_NAME=...`
# 3) run `kind get kubeconfig --name ${YOUR_CLUSTER_NAME} > ./kubeconfig` to get the right config
# 4) replace localhost with the IP of your host machine in the extra_hosts section `sed -i'' -e "s/127.0.0.1/${YOUR_CLUSTER_NAME}-control-plane/g" ./kubeconfig`
kubero:
container_name: "kubero-ui"
build:
context: .
args:
- VERSION=Local-Build
dockerfile: Dockerfile
image: ghcr.io/kubero-dev/kubero/kubero:latest
#command: ["tail", "-f", "/dev/null"]
env_file:
# copy the .env.template file to .env and change the values to your needs
- server/.env
environment:
# change the KUBERO_CONTEXT to the name of your local kind cluster context
# you can find the name by running `kubectl config get-contexts`
# Must be the same as the context name in the kubeconfig file !
#- KUBECONFIG_BASE64=
- KUBECONFIG_PATH=./kubeconfig
- KUBERO_CONTEXT=kind-${YOUR_CLUSTER_NAME}
- KUBERO_NAMESPACE=kubero
- KUBERO_SESSION_KEY=randomString
ports:
# the UI will be available on http://localhost:8000. Make sure the port is not used by another service
- "8000:2000"
extra_hosts:
# if you are using a local Kubernetes cluster, make sure you use the container name from your
# local kind cluster control plane. You can find the name by running `docker ps` and looking for the
# container name of the control plane. 192.168.65.254 is your host machine IP address.
- "${YOUR_CLUSTER_NAME}-control-plane:192.168.65.254"
volumes:
- ./kubeconfig:/app/server/kubeconfig
- ./server/config.yaml:/app/server/config.yaml
- ./server/db:/app/server/db
28 changes: 11 additions & 17 deletions docker-compose.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
version: "3"
services:
# Kubero usually runs in a Kubernetes cluster in the kubero namespace
# If you want to run it locally, you can use kind to create a local Kubernetes cluster
# In case you want to run it from a separate container, you can use the following configuration
# Make sure yourt cluster is accessible with the kubeconfig file or the KUBECONFIG_BASE64 environment variable
# To extract your kubeconfig file from a Kubernetes cluster, you can use the following command:
# kubectl config view --raw --minify | base64
kubero:
container_name: "kubero-ui"
build:
Expand All @@ -15,24 +17,16 @@ services:
# copy the .env.template file to .env and change the values to your needs
- server/.env
environment:
# change the KUBERO_CONTEXT to the name of your local kind cluster context
# you can find the name by running `kubectl config get-contexts`
# Must be the same as the context name in the kubeconfig file !
#- KUBECONFIG_BASE64=
- KUBECONFIG_PATH=./kubeconfig
- KUBERO_CONTEXT=inClusterContext
- KUBECONFIG_BASE64=CHANGE_ME
#- KUBECONFIG_PATH=/app/server/kubeconfig
- KUBERO_CONTEXT=
- KUBERO_NAMESPACE=kubero
- KUBERO_SESSION_KEY=randomString
ports:
# the UI will be available on http://localhost:8000. Make sure the port is not used by another service
- "8000:2000"
extra_hosts:
# if you are using a local Kubernetes cluster, make sure you use the container name from your
# local kind cluster control plane. You can find the name by running `docker ps` and looking for the
# container name of the control plane. 192.168.65.2 is your host machine IP address.
- "kubero-001-control-plane:192.168.65.2"
volumes:
# run `kind get kubeconfig --internal --name kubero-001 > ./kubeconfig-docker` to get the right config
# modify the server in the config to use the external kubernetes port from your host machine
- ./kubeconfig:/app/server/kubeconfig
- ./server/config.yaml:/app/server/config.yaml
# copy the config.yaml.template file to config.yaml
- ./server/config.yaml:/app/server/config.yaml
- ./server/db:/app/server/db
#- ./kubeconfig:/app/server/kubeconfig

0 comments on commit 35063f7

Please sign in to comment.