-
Notifications
You must be signed in to change notification settings - Fork 0
Service config #367
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
Merged
Merged
Service config #367
Changes from all commits
Commits
Show all changes
15 commits
Select commit
Hold shift + click to select a range
3b5aabf
Remove unused Filebrowser service
bubacoder ae7510c
Move dotfiles to config (not yet used)
bubacoder e4f4c5d
Add clean-venvs task
bubacoder 0c8b3fa
Migrate from Unifi-controller to UniFi Network Application
bubacoder cec00be
Move qBittorrent service from NAS
bubacoder d6f8cf9
Add MongoDB and Gitea Runner (act_runner)
bubacoder c2bf25d
Migrate to bind-mounted volumes (with initcontainer to fix permissions)
bubacoder f508320
Fix act-runner networking
bubacoder 99ca2ae
Use correct LittleLLM image
bubacoder 87c7fd7
Update Authelia
bubacoder 9b00ae9
Ollama: fallback to Vulkan from ROCM
bubacoder 14710df
Update Jupyter Notebook
bubacoder a82f6cf
Do not lint searxng config
bubacoder f2c1a8d
Upgrade to gemini-3.5-flash model
bubacoder 6c54592
Pin busybox image
bubacoder File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,14 +1,22 @@ | ||
| # GPU override for Ollama — AMD ROCm hardware inference. | ||
| # GPU override for Ollama — AMD iGPU inference via the Vulkan backend. | ||
| # Enable by setting GPU_COMPOSE_SUFFIX=amdgpu in config/docker/<hostname>/.env | ||
| # Switches to the :rocm image tag and passes both DRI and KFD devices. | ||
| # NOTE: deliberately the STANDARD image, not :rocm — colony's Vega iGPU | ||
| # (Ryzen 7 5825U, gfx90c) has no rocblas kernels in ROCm builds ("dropping | ||
| # ROCm device"), while the standard image ships the ggml Vulkan backend | ||
| # (the :rocm image does not), which supports Vega iGPUs via RADV. | ||
| # OLLAMA_IGPU_ENABLE opts the iGPU into scheduling on Linux. | ||
| # References: | ||
| # - Vulkan backend for AMD/Intel GPUs: https://github.com/ollama/ollama/issues/11247 | ||
| # - Hardware support matrix (Vulkan path for iGPUs): https://docs.ollama.com/gpu | ||
| --- | ||
| name: ollama | ||
| services: | ||
| ollama: | ||
| image: ollama/ollama:0.31.1-rocm | ||
| image: ollama/ollama:0.31.1 | ||
| devices: | ||
| - /dev/dri/renderD128:/dev/dri/renderD128 | ||
| - /dev/kfd:/dev/kfd | ||
| environment: | ||
| OLLAMA_IGPU_ENABLE: "1" | ||
| group_add: | ||
| - "${GPU_RENDER_GID}" # render group — numeric GID required (name may not exist in container) | ||
| - "${GPU_VIDEO_GID}" # video group |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,59 @@ | ||
| # MongoDB is a source-available, document-oriented NoSQL database designed for scalability and | ||
| # developer agility, storing data as flexible, JSON-like documents rather than rows and columns. | ||
| # | ||
| # This is a shared instance, following the same pattern as postgresql/couchdb in this category. | ||
| # Mongo's /docker-entrypoint-initdb.d scripts only run once, on first startup with an empty data | ||
| # directory — each consuming service should add its own init script under ./config/initdb when it | ||
| # first starts using this instance. A service added *after* this instance already has data must | ||
| # create its user/db manually via `mongosh` instead, since init scripts won't re-run. | ||
| # | ||
| # Links: | ||
| # - Home: https://www.mongodb.com | ||
| # - Source: https://github.com/docker-library/mongo | ||
| # - Docs: https://hub.docker.com/_/mongo | ||
| # | ||
| # TODO: Add a mongo-express (or similar) admin UI service if a web GUI is wanted | ||
| # TODO: Implement an automated backup solution (mongodump) | ||
| --- | ||
| name: mongodb | ||
| services: | ||
| mongodb-init: | ||
| image: busybox:1.38.0 | ||
| container_name: mongodb-init | ||
| command: ["sh", "-c", "chown -R 999:999 /data/db"] | ||
| volumes: | ||
| - ${DOCKER_VOLUMES}/mongodb/data:/data/db | ||
|
|
||
| mongodb: | ||
| image: mongo:7.0.37-jammy | ||
| container_name: mongodb | ||
| restart: unless-stopped | ||
| # kics-scan ignore-block | ||
| environment: | ||
| MONGO_INITDB_ROOT_USERNAME: ${MONGO_ROOT_USERNAME:-root} | ||
| MONGO_INITDB_ROOT_PASSWORD: ${MONGO_ROOT_PASSWORD:?MongoDB root password must be set} | ||
| volumes: | ||
| - ${DOCKER_VOLUMES}/mongodb/data:/data/db | ||
| - ./config/initdb:/docker-entrypoint-initdb.d | ||
| ports: | ||
| - 27017:27017 | ||
| networks: | ||
| - proxy | ||
| depends_on: | ||
| mongodb-init: | ||
| condition: service_completed_successfully | ||
| healthcheck: | ||
| test: ["CMD", "mongosh", "--quiet", "--eval", "db.adminCommand('ping')"] | ||
| interval: 10s | ||
| timeout: 5s | ||
| retries: 5 | ||
| labels: | ||
| traefik.enable: false | ||
| homepage.group: Storage | ||
| homepage.name: MongoDB | ||
| homepage.icon: mongodb.png | ||
| homepage.description: "Popular NoSQL document database" | ||
|
|
||
| networks: | ||
| proxy: | ||
| external: true |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,51 @@ | ||
| # Gitea Runner (formerly act_runner) is the official runner for Gitea Actions. | ||
| # It connects to a Gitea instance and executes CI/CD workflows in isolated Docker containers, | ||
| # supporting three modes: host-level execution, Docker (bind-mounting the host Docker socket), | ||
| # and Docker-in-Docker (DinD) for full isolation. | ||
| # | ||
| # Links: | ||
| # - Home: https://gitea.com/gitea/runner | ||
| # - Source: https://gitea.com/gitea/runner | ||
| # - Docs: https://docs.gitea.com/usage/actions/act-runner | ||
| # - Install instructions URL: https://docs.gitea.com/usage/actions/act-runner | ||
| # - Compose: https://docs.gitea.com/usage/actions/act-runner | ||
| # | ||
| # Registration: | ||
| # 1. Navigate to Gitea Admin → Actions → Runners → Create Runner | ||
| # 2. Copy the registration token and set GITEA_RUNNER_REGISTRATION_TOKEN in the host .env file | ||
| # 3. The runner auto-registers on first start using this token; the resulting .runner file | ||
| # persists in the /data volume and is used for all subsequent connections | ||
| # 4. To re-register (e.g. after token rotation), stop the container, delete the | ||
| # ${DOCKER_VOLUMES}/act-runner/.runner file, and restart | ||
| # | ||
| # TODO: Pin to a specific version tag instead of 2.0.0 for production stability | ||
| # TODO: Use the dind-rootless flavour for production deployments requiring job isolation | ||
| # TODO: Configure a shared external cache server across multiple runners to avoid rebuilding on each runner | ||
| # TODO: Mount runner images from a local registry or mirror to avoid rate limits on Docker Hub | ||
| # TODO: Configure container.valid_volumes to restrict which host paths job containers can mount | ||
| # TODO: Join Traefik to the dev-act-runner network in docker/security/traefik/traefik.yaml if a web UI is added | ||
| --- | ||
| name: act-runner | ||
| services: | ||
| act-runner: | ||
| image: gitea/runner:2.0.0 | ||
| container_name: act-runner | ||
| restart: unless-stopped | ||
| environment: | ||
| TZ: ${TIMEZONE} | ||
| CONFIG_FILE: /config.yaml | ||
| GITEA_INSTANCE_URL: https://gitea.${MYDOMAIN}/ | ||
| GITEA_RUNNER_REGISTRATION_TOKEN: ${GITEA_RUNNER_REGISTRATION_TOKEN} | ||
| GITEA_RUNNER_NAME: ${GITEA_RUNNER_NAME:-act-runner} | ||
| GITEA_RUNNER_LABELS: ${GITEA_RUNNER_LABELS:-docker:docker://node:20-bookworm,ubuntu-latest:docker://node:20-bookworm} | ||
| volumes: | ||
| - ${DOCKER_VOLUMES}/act-runner:/data | ||
| - ./config/config.yaml:/config.yaml:ro | ||
| # kics-scan ignore-line | ||
| - /var/run/docker.sock:/var/run/docker.sock | ||
| networks: | ||
| - dev-act-runner | ||
|
|
||
| networks: | ||
| dev-act-runner: | ||
| external: true |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,21 @@ | ||
| # Gitea Runner configuration | ||
| # See https://gitea.com/gitea/runner/src/branch/main/config.example.yaml | ||
|
|
||
| log: | ||
| level: info | ||
|
|
||
| runner: | ||
| labels: | ||
| - docker:docker://node:20-bookworm | ||
| - ubuntu-latest:docker://node:20-bookworm | ||
|
|
||
| container: | ||
| # Empty = the runner creates a per-job docker network, which is the only | ||
| # way workflow `services:` hostnames (e.g. postgres, qdrant) resolve from | ||
| # the job container — the default bridge network has no name resolution. | ||
| network: "" | ||
| privileged: false | ||
|
|
||
| cache: | ||
| host: "" | ||
| port: 8088 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.