Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

improve docker compose #401

Merged
merged 1 commit into from
Sep 9, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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
Loading