59 lines
1.6 KiB
YAML
59 lines
1.6 KiB
YAML
services:
|
|
devcontainer:
|
|
# All tags avaiable at: https://mcr.microsoft.com/v2/devcontainers/rust/tags/list
|
|
# image: mcr.microsoft.com/vscode/devcontainers/python:3.10-bullseye
|
|
image: registry.vegastar.vn/vegacloud/fission-python:3.10-bullseye
|
|
volumes:
|
|
- ../..:/workspaces:cached
|
|
command: sleep infinity
|
|
env_file:
|
|
- .env
|
|
|
|
k3s-server:
|
|
image: "rancher/k3s:${K3S_VERSION:-latest}"
|
|
# command: server --disable traefik --disable servicelb
|
|
command: server --disable traefik
|
|
hostname: k3s-server
|
|
tmpfs: [ "/run", "/var/run" ]
|
|
ulimits:
|
|
nproc: 65535
|
|
nofile:
|
|
soft: 65535
|
|
hard: 65535
|
|
privileged: true
|
|
restart: always
|
|
environment:
|
|
- K3S_TOKEN=${K3S_TOKEN:-secret}
|
|
- K3S_KUBECONFIG_OUTPUT=/output/kubeconfig.yaml
|
|
- K3S_KUBECONFIG_MODE=666
|
|
volumes:
|
|
- k3s-server:/var/lib/rancher/k3s
|
|
# This is just so that we get the kubeconfig file out
|
|
- .:/output
|
|
ports:
|
|
- 6443 # Kubernetes API Server
|
|
- 80 # Ingress controller port 80
|
|
- 443 # Ingress controller port 443
|
|
|
|
k3s-agent:
|
|
image: "rancher/k3s:${K3S_VERSION:-latest}"
|
|
hostname: k3s-agent
|
|
tmpfs: [ "/run", "/var/run" ]
|
|
ulimits:
|
|
nproc: 65535
|
|
nofile:
|
|
soft: 65535
|
|
hard: 65535
|
|
privileged: true
|
|
restart: always
|
|
environment:
|
|
- K3S_URL=https://k3s-server:6443
|
|
- K3S_TOKEN=${K3S_TOKEN:-secret}
|
|
volumes:
|
|
- k3s-agent:/var/lib/rancher/k3s
|
|
profiles: [ "cluster" ] # only start agent if run with profile `cluster`
|
|
|
|
volumes:
|
|
k3s-server: {}
|
|
k3s-agent: {}
|