56 Commits

Author SHA1 Message Date
Rodney Osodo fe5da52437 feat(docker): add convertx
Continuous Integration / pre-commit (push) Has been cancelled
Continuous Integration / docker-compose (push) Has been cancelled
Continuous Integration / terraform (bohr) (push) Has been cancelled
Continuous Integration / terraform (galana) (push) Has been cancelled
Continuous Integration / terraform (tana) (push) Has been cancelled
Continuous Integration / terraform (turkwel) (push) Has been cancelled
Continuous Integration / terraform (yala) (push) Has been cancelled
Continuous Integration / ansible (push) Has been cancelled
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-07-10 07:21:49 +00:00
Rodney Osodo 6b064bc208 fix(prometheus): remove dawarich and change port
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-07-10 07:13:06 +00:00
Rodney Osodo e458096e23 feat(docker): add trek for road trips
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-07-10 07:12:38 +00:00
Rodney Osodo 99dcb2593b feat(docker): add obsidian
Continuous Integration / pre-commit (push) Has been cancelled
Continuous Integration / docker-compose (push) Has been cancelled
Continuous Integration / terraform (bohr) (push) Has been cancelled
Continuous Integration / terraform (galana) (push) Has been cancelled
Continuous Integration / terraform (tana) (push) Has been cancelled
Continuous Integration / terraform (turkwel) (push) Has been cancelled
Continuous Integration / terraform (yala) (push) Has been cancelled
Continuous Integration / ansible (push) Has been cancelled
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-07-06 20:34:42 +00:00
Rodney Osodo 37ff1653f1 fix(make): add example for generate on help command
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-07-06 18:51:44 +00:00
Rodney Osodo f3f8fe90ef fix(docker): use ollama for karakeep rather than openai
Continuous Integration / pre-commit (push) Has been cancelled
Continuous Integration / docker-compose (push) Has been cancelled
Continuous Integration / terraform (bohr) (push) Has been cancelled
Continuous Integration / terraform (galana) (push) Has been cancelled
Continuous Integration / terraform (tana) (push) Has been cancelled
Continuous Integration / terraform (turkwel) (push) Has been cancelled
Continuous Integration / terraform (yala) (push) Has been cancelled
Continuous Integration / ansible (push) Has been cancelled
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-07-06 09:18:43 +00:00
Rodney Osodo 878de32c0f feat(docker): add it tools
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-07-06 09:08:54 +00:00
Rodney Osodo a13cb04d07 feat(docker): add grafana
Continuous Integration / pre-commit (push) Has been cancelled
Continuous Integration / docker-compose (push) Has been cancelled
Continuous Integration / terraform (bohr) (push) Has been cancelled
Continuous Integration / terraform (galana) (push) Has been cancelled
Continuous Integration / terraform (tana) (push) Has been cancelled
Continuous Integration / terraform (turkwel) (push) Has been cancelled
Continuous Integration / terraform (yala) (push) Has been cancelled
Continuous Integration / ansible (push) Has been cancelled
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-07-06 08:58:47 +00:00
Rodney Osodo ca62a1c14d fix(docker): remove ollama exporter
Continuous Integration / pre-commit (push) Has been cancelled
Continuous Integration / docker-compose (push) Has been cancelled
Continuous Integration / terraform (bohr) (push) Has been cancelled
Continuous Integration / terraform (galana) (push) Has been cancelled
Continuous Integration / terraform (tana) (push) Has been cancelled
Continuous Integration / terraform (turkwel) (push) Has been cancelled
Continuous Integration / terraform (yala) (push) Has been cancelled
Continuous Integration / ansible (push) Has been cancelled
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-07-05 20:16:22 +00:00
Rodney Osodo fdeb41d4b6 feat(docker): add grafana
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-07-05 20:16:22 +00:00
Rodney Osodo 41da6e65ae feat(docker): add victoria metrics
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-07-05 20:16:22 +00:00
Rodney Osodo 5618e6b3c4 feat(prometheus): add node, pihole and ollama exporters to be scraped
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-07-05 20:16:22 +00:00
Rodney Osodo d294e44129 feat(docker): add pihole exporter for metrics
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-07-05 20:16:22 +00:00
Rodney Osodo ffea38e15a feat(docker): add ollama exporter for metrics
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-07-05 20:16:22 +00:00
Rodney Osodo 473557be60 feat(docker): add node-exporter for system metrics
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-07-05 20:16:22 +00:00
b1ackd0t 550d55c51a Merge pull request #87 from rodneyosodo/dependabot/github_actions/gh-dependency-640176b5ab
Continuous Integration / pre-commit (push) Has been cancelled
Continuous Integration / docker-compose (push) Has been cancelled
Continuous Integration / terraform (bohr) (push) Has been cancelled
Continuous Integration / terraform (galana) (push) Has been cancelled
Continuous Integration / terraform (tana) (push) Has been cancelled
Continuous Integration / terraform (turkwel) (push) Has been cancelled
Continuous Integration / terraform (yala) (push) Has been cancelled
Continuous Integration / ansible (push) Has been cancelled
chore(deps): bump actions/checkout from 6 to 7 in the gh-dependency group
2026-07-01 12:28:50 +03:00
dependabot[bot] 0efcadb357 chore(deps): bump actions/checkout in the gh-dependency group
Bumps the gh-dependency group with 1 update: [actions/checkout](https://github.com/actions/checkout).


Updates `actions/checkout` from 6 to 7
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: gh-dependency
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-01 06:26:59 +00:00
Rodney Osodo bd6bb1a193 fix(hedgedoc): add NODE_ENV and DEBUG flags
Continuous Integration / pre-commit (push) Has been cancelled
Continuous Integration / docker-compose (push) Has been cancelled
Continuous Integration / terraform (bohr) (push) Has been cancelled
Continuous Integration / terraform (galana) (push) Has been cancelled
Continuous Integration / terraform (tana) (push) Has been cancelled
Continuous Integration / terraform (turkwel) (push) Has been cancelled
Continuous Integration / terraform (yala) (push) Has been cancelled
Continuous Integration / ansible (push) Has been cancelled
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-06-02 17:58:29 +00:00
Rodney Osodo 33a98f71e4 feat(prometheus): enable metrics on endlessg and opengist
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-06-02 17:57:52 +00:00
Rodney Osodo 1eb2298b89 feat(karakeep): use local ollama models
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-06-02 17:57:18 +00:00
Rodney Osodo b5b27781d4 fix(dawarich): try and expose metrics but it failed
Continuous Integration / pre-commit (push) Has been cancelled
Continuous Integration / docker-compose (push) Has been cancelled
Continuous Integration / terraform (bohr) (push) Has been cancelled
Continuous Integration / terraform (galana) (push) Has been cancelled
Continuous Integration / terraform (tana) (push) Has been cancelled
Continuous Integration / terraform (turkwel) (push) Has been cancelled
Continuous Integration / terraform (yala) (push) Has been cancelled
Continuous Integration / ansible (push) Has been cancelled
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-06-02 13:47:35 +00:00
Rodney Osodo f5051c6028 chore(docker): prefix images with docker.io
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-06-02 16:00:10 +03:00
b1ackd0t d0ff9e8e96 Merge pull request #85 from rodneyosodo/dependabot/docker_compose/docker-compose/cloudflared/docker-dependency-f8db4ec40c
chore(deps): bump the docker-dependency group across 13 directories with 15 updates
2026-06-02 14:15:57 +03:00
Rodney Osodo aa20d01e73 build(docker-compose): pin older Redis, Postgres and Meilisearch images
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-06-02 14:09:18 +03:00
Rodney Osodo 3d84387f6d ci(docker-compose): add image validation to CI
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-06-02 13:59:02 +03:00
dependabot[bot] 5711632cac chore(deps): bump the docker-dependency group across 13 directories with 15 updates
Bumps the docker-dependency group with 1 update in the /docker-compose/cloudflared directory: cloudflare/cloudflared.
Bumps the docker-dependency group with 2 updates in the /docker-compose/dawarich directory: freikin/dawarich and redis.
Bumps the docker-dependency group with 1 update in the /docker-compose/docuseal directory: docuseal/docuseal.
Bumps the docker-dependency group with 1 update in the /docker-compose/dozzle directory: amir20/dozzle.
Bumps the docker-dependency group with 2 updates in the /docker-compose/gitea directory: gitea/gitea and gitea/runner.
Bumps the docker-dependency group with 2 updates in the /docker-compose/immich directory: redis and [immich-app/postgres](https://github.com/immich-app/base-images).
Bumps the docker-dependency group with 1 update in the /docker-compose/karakeep directory: getmeili/meilisearch.
Bumps the docker-dependency group with 1 update in the /docker-compose/mealie directory: hkotel/mealie.
Bumps the docker-dependency group with 1 update in the /docker-compose/paperless directory: gotenberg/gotenberg.
Bumps the docker-dependency group with 1 update in the /docker-compose/portainer directory: portainer/portainer-ce.
Bumps the docker-dependency group with 1 update in the /docker-compose/prometheus directory: prom/prometheus.
Bumps the docker-dependency group with 1 update in the /docker-compose/speedtest-tracker directory: linuxserver/speedtest-tracker.
Bumps the docker-dependency group with 1 update in the /docker-compose/swagger-editor directory: swaggerapi/swagger-editor.


Updates `cloudflare/cloudflared` from 2026.3.0 to 2026.5.2

Updates `freikin/dawarich` from 1.7.7 to 1.7.11

Updates `redis` from 7.4-alpine to 8.8-alpine

Updates `docuseal/docuseal` from 2.5.3 to 3.0.2

Updates `amir20/dozzle` from v10.5.3 to v10.6.3

Updates `gitea/gitea` from 1.26.1 to 1.26.2

Updates `gitea/runner` from 1.0.3 to 1.0.7

Updates `redis` from 7.2.5 to 8.8.0

Updates `immich-app/postgres` from 14-vectorchord0.4.3-pgvectors0.2.0 to 16-vectorchord0.4.3-pgvectors0.2.0
- [Commits](https://github.com/immich-app/base-images/commits)

Updates `getmeili/meilisearch` from v1.43.0 to v1.45.1

Updates `hkotel/mealie` from v3.16.0 to v3.19.2

Updates `gotenberg/gotenberg` from 8.27 to 8.33

Updates `portainer/portainer-ce` from 2.41.1 to 2.42.0

Updates `prom/prometheus` from v3.11.3 to v3.12.0

Updates `linuxserver/speedtest-tracker` from 1.14.1 to 1.14.3

Updates `swaggerapi/swagger-editor` from v5.4.1 to v5.5.2

---
updated-dependencies:
- dependency-name: cloudflare/cloudflared
  dependency-version: 2026.5.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: docker-dependency
- dependency-name: freikin/dawarich
  dependency-version: 1.7.11
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-dependency
- dependency-name: redis
  dependency-version: 8.8-alpine
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: docuseal/docuseal
  dependency-version: 3.0.2
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: docker-dependency
- dependency-name: amir20/dozzle
  dependency-version: v10.6.3
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: gitea/gitea
  dependency-version: 1.26.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-dependency
- dependency-name: gitea/runner
  dependency-version: 1.0.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-dependency
- dependency-name: redis
  dependency-version: 8.8.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: docker-dependency
- dependency-name: immich-app/postgres
  dependency-version: 16-vectorchord0.4.3-pgvectors0.2.0
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: getmeili/meilisearch
  dependency-version: v1.45.1
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: hkotel/mealie
  dependency-version: v3.19.2
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: gotenberg/gotenberg
  dependency-version: '8.33'
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: docker-dependency
- dependency-name: portainer/portainer-ce
  dependency-version: 2.42.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: docker-dependency
- dependency-name: prom/prometheus
  dependency-version: v3.12.0
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: linuxserver/speedtest-tracker
  dependency-version: 1.14.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-dependency
- dependency-name: swaggerapi/swagger-editor
  dependency-version: v5.5.2
  dependency-type: direct:production
  dependency-group: docker-dependency
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-01 21:45:38 +00:00
Rodney Osodo f0b38a27e6 fix(kener): update it to work
Continuous Integration / pre-commit (push) Has been cancelled
Continuous Integration / docker-compose (push) Has been cancelled
Continuous Integration / terraform (bohr) (push) Has been cancelled
Continuous Integration / terraform (galana) (push) Has been cancelled
Continuous Integration / terraform (tana) (push) Has been cancelled
Continuous Integration / terraform (turkwel) (push) Has been cancelled
Continuous Integration / terraform (yala) (push) Has been cancelled
Continuous Integration / ansible (push) Has been cancelled
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-21 19:46:06 +00:00
Rodney Osodo 53f6c61da8 fix(immich): there is no hardware acceleration
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-21 19:02:39 +00:00
Rodney Osodo 5108984dfc feat(ollam): upgrade docker version
Continuous Integration / pre-commit (push) Has been cancelled
Continuous Integration / docker-compose (push) Has been cancelled
Continuous Integration / terraform (bohr) (push) Has been cancelled
Continuous Integration / terraform (galana) (push) Has been cancelled
Continuous Integration / terraform (tana) (push) Has been cancelled
Continuous Integration / terraform (turkwel) (push) Has been cancelled
Continuous Integration / terraform (yala) (push) Has been cancelled
Continuous Integration / ansible (push) Has been cancelled
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-17 11:18:34 +00:00
Rodney Osodo eaaf893daa feat(dawarich): export metrics
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-17 11:18:12 +00:00
Rodney Osodo a12742b8a1 feat(opengist): enable metrics
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-17 11:10:30 +00:00
Rodney Osodo 2545ea9bf1 fix(pihole): make it work again
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-17 11:04:47 +00:00
Rodney Osodo 3945bbb2fd fix(prometheus): enable scraping docker containers
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-17 09:50:29 +00:00
Rodney Osodo 0664caf1bb fix(rustfs): remove redis container
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-17 09:27:59 +00:00
Rodney Osodo 36b1bd4435 feat(speedtest-tracker): upgrade docker images
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-16 18:24:54 +00:00
Rodney Osodo fb5bbfd6e5 feat(swagger-editor): upgrade docker images
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-16 18:24:28 +00:00
Rodney Osodo 2bc1059d81 feat(vaultwarden): upgrade docker images
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-16 18:24:04 +00:00
Rodney Osodo 59b699a1aa feat(gitea): add git runner
Continuous Integration / pre-commit (push) Has been cancelled
Continuous Integration / docker-compose (push) Has been cancelled
Continuous Integration / terraform (bohr) (push) Has been cancelled
Continuous Integration / terraform (galana) (push) Has been cancelled
Continuous Integration / terraform (tana) (push) Has been cancelled
Continuous Integration / terraform (turkwel) (push) Has been cancelled
Continuous Integration / terraform (yala) (push) Has been cancelled
Continuous Integration / ansible (push) Has been cancelled
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-13 21:08:36 +00:00
Rodney Osodo e5363fa04a feat(dozzle): update environment vars and directory mounts
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-13 20:15:07 +00:00
Rodney Osodo b4af95285d feat(docuseal): update image
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-13 20:14:40 +00:00
Rodney Osodo 822db8d89f fix(dawarich): change redis command line arguments
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-13 20:08:12 +00:00
Rodney Osodo 3cdc77ce8a fix(atuin): upgrade image and server command
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-13 19:46:27 +00:00
b1ackd0t 27bd7e97fe Merge pull request #84 from rodneyosodo/remove-services
Remove Linkwarden and uptime-kuma services from Docker Compose
2026-05-13 22:37:04 +03:00
Rodney Osodo 81a35fd1c5 chore(docker-compose): remove uptime-kuma compose and include
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-13 22:35:42 +03:00
Rodney Osodo 0ef4ea8c78 chore(docker-compose): remove Linkwarden service and env
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-13 22:30:38 +03:00
b1ackd0t c8d39b0c17 Merge pull request #83 from rodneyosodo/dependabot/docker_compose/docker-compose/atuin/docker-dependency-9fbd3121ae
chore(deps): bump the docker-dependency group across 13 directories with 14 updates
2026-05-13 21:52:10 +03:00
Rodney Osodo 95e045c398 revert: certain docker images are okay not being upgraded
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-13 18:41:03 +00:00
dependabot[bot] b3ddfdbe7f chore(deps): bump the docker-dependency group across 13 directories with 14 updates
Bumps the docker-dependency group with 1 update in the /docker-compose/atuin directory: [atuinsh/atuin](https://github.com/atuinsh/atuin).
Bumps the docker-dependency group with 2 updates in the /docker-compose/dawarich directory: freikin/dawarich and redis.
Bumps the docker-dependency group with 1 update in the /docker-compose/dozzle directory: amir20/dozzle.
Bumps the docker-dependency group with 2 updates in the /docker-compose/immich directory: redis and [immich-app/postgres](https://github.com/immich-app/base-images).
Bumps the docker-dependency group with 2 updates in the /docker-compose/karakeep directory: [karakeep-app/karakeep](https://github.com/karakeep-app/karakeep) and getmeili/meilisearch.
Bumps the docker-dependency group with 1 update in the /docker-compose/linkwarden directory: [linkwarden/linkwarden](https://github.com/linkwarden/linkwarden).
Bumps the docker-dependency group with 1 update in the /docker-compose/opengist directory: [thomiceli/opengist](https://github.com/thomiceli/opengist).
Bumps the docker-dependency group with 1 update in the /docker-compose/pihole directory: pihole/pihole.
Bumps the docker-dependency group with 1 update in the /docker-compose/portainer directory: portainer/portainer-ce.
Bumps the docker-dependency group with 1 update in the /docker-compose/prometheus directory: prom/prometheus.
Bumps the docker-dependency group with 1 update in the /docker-compose/rustfs directory: redis.
Bumps the docker-dependency group with 1 update in the /docker-compose/swagger-editor directory: swaggerapi/swagger-editor.
Bumps the docker-dependency group with 1 update in the /docker-compose/uptime-kuma directory: louislam/uptime-kuma.


Updates `atuinsh/atuin` from 18.15.2 to 18.16.0
- [Release notes](https://github.com/atuinsh/atuin/releases)
- [Changelog](https://github.com/atuinsh/atuin/blob/main/CHANGELOG.md)
- [Commits](https://github.com/atuinsh/atuin/compare/v18.15.2...v18.16.0)

Updates `freikin/dawarich` from 1.6.1 to 1.7.7

Updates `redis` from 7.4-alpine to 8.6-alpine

Updates `redis` from 7.4-alpine to 8.6-alpine

Updates `redis` from 7.4-alpine to 8.6-alpine

Updates `amir20/dozzle` from v10.5.0 to v10.5.2

Updates `redis` from 7.2.5 to 8.6.3

Updates `immich-app/postgres` from 14-vectorchord0.4.3-pgvectors0.2.0 to 16-vectorchord0.4.3-pgvectors0.2.0
- [Commits](https://github.com/immich-app/base-images/commits)

Updates `redis` from 7.2.5 to 8.6.3

Updates `redis` from 7.2.5 to 8.6.3

Updates `karakeep-app/karakeep` from 0.31.0 to 0.32.0
- [Release notes](https://github.com/karakeep-app/karakeep/releases)
- [Commits](https://github.com/karakeep-app/karakeep/compare/v0.31.0...v0.32.0)

Updates `getmeili/meilisearch` from v1.41.0 to v1.43.0

Updates `linkwarden/linkwarden` from v2.14.0 to v2.14.1
- [Release notes](https://github.com/linkwarden/linkwarden/releases)
- [Commits](https://github.com/linkwarden/linkwarden/compare/v2.14.0...v2.14.1)

Updates `thomiceli/opengist` from 1.12.1 to 1.12.2
- [Release notes](https://github.com/thomiceli/opengist/releases)
- [Changelog](https://github.com/thomiceli/opengist/blob/master/CHANGELOG.md)
- [Commits](https://github.com/thomiceli/opengist/compare/v1.12.1...v1.12.2)

Updates `pihole/pihole` from 2026.02.0 to 2026.04.1

Updates `portainer/portainer-ce` from 2.40.0 to 2.41.1

Updates `prom/prometheus` from v3.10.0 to v3.11.3

Updates `redis` from 7.4-alpine to 8.6-alpine

Updates `redis` from 7.4-alpine to 8.6-alpine

Updates `redis` from 7.4-alpine to 8.6-alpine

Updates `swaggerapi/swagger-editor` from v5.3.7 to v5.3.8

Updates `louislam/uptime-kuma` from 2.2.1 to 2.3.2

---
updated-dependencies:
- dependency-name: atuinsh/atuin
  dependency-version: 18.16.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: docker-dependency
- dependency-name: freikin/dawarich
  dependency-version: 1.7.7
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: docker-dependency
- dependency-name: redis
  dependency-version: 8.6-alpine
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: redis
  dependency-version: 8.6-alpine
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: redis
  dependency-version: 8.6-alpine
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: amir20/dozzle
  dependency-version: v10.5.2
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: redis
  dependency-version: 8.6.3
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: docker-dependency
- dependency-name: immich-app/postgres
  dependency-version: 16-vectorchord0.4.3-pgvectors0.2.0
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: redis
  dependency-version: 8.6.3
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: docker-dependency
- dependency-name: redis
  dependency-version: 8.6.3
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: docker-dependency
- dependency-name: karakeep-app/karakeep
  dependency-version: 0.32.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: docker-dependency
- dependency-name: getmeili/meilisearch
  dependency-version: v1.43.0
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: linkwarden/linkwarden
  dependency-version: v2.14.1
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: thomiceli/opengist
  dependency-version: 1.12.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-dependency
- dependency-name: pihole/pihole
  dependency-version: 2026.04.1
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: portainer/portainer-ce
  dependency-version: 2.41.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: docker-dependency
- dependency-name: prom/prometheus
  dependency-version: v3.11.3
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: redis
  dependency-version: 8.6-alpine
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: redis
  dependency-version: 8.6-alpine
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: redis
  dependency-version: 8.6-alpine
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: swaggerapi/swagger-editor
  dependency-version: v5.3.8
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: louislam/uptime-kuma
  dependency-version: 2.3.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: docker-dependency
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-13 18:35:28 +00:00
Rodney Osodo d8dd9f7afc chore(docker-compose): add help descriptions and awk check
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-13 18:34:33 +00:00
Rodney Osodo 822ca12660 feat: add paperless-ngx for document management
Continuous Integration / terraform (bohr) (push) Has been cancelled
Continuous Integration / terraform (galana) (push) Has been cancelled
Continuous Integration / terraform (tana) (push) Has been cancelled
Continuous Integration / terraform (turkwel) (push) Has been cancelled
Continuous Integration / terraform (yala) (push) Has been cancelled
Continuous Integration / ansible (push) Has been cancelled
Continuous Integration / pre-commit (push) Has been cancelled
Continuous Integration / docker-compose (push) Has been cancelled
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-11 11:25:40 +00:00
Rodney Osodo fbbce873e2 feat: add ollama and webUI for paperless ngx
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-05-11 09:14:09 +00:00
b1ackd0t 2a13f06542 Merge pull request #76 from rodneyosodo/dependabot/docker_compose/docker-compose/atuin/docker-dependency-0c7bea7722
Continuous Integration / pre-commit (push) Has been cancelled
Continuous Integration / docker-compose (push) Has been cancelled
Continuous Integration / terraform (bohr) (push) Has been cancelled
Continuous Integration / terraform (galana) (push) Has been cancelled
Continuous Integration / terraform (tana) (push) Has been cancelled
Continuous Integration / terraform (turkwel) (push) Has been cancelled
Continuous Integration / terraform (yala) (push) Has been cancelled
Continuous Integration / ansible (push) Has been cancelled
chore(deps): bump the docker-dependency group across 15 directories with 15 updates
2026-04-27 22:33:15 +03:00
Rodney Osodo 2f7e0f3199 build(docker-compose): pin dawarich image to v1.6.1
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-04-27 22:28:51 +03:00
Rodney Osodo 1667cb4874 build(docker): update container image tags
Signed-off-by: Rodney Osodo <socials@rodneyosodo.com>
2026-04-27 22:27:29 +03:00
dependabot[bot] eab9248cd4 chore(deps): bump the docker-dependency group across 15 directories with 15 updates
Bumps the docker-dependency group with 1 update in the /docker-compose/atuin directory: atuinsh/atuin.
Bumps the docker-dependency group with 1 update in the /docker-compose/cloudflared directory: cloudflare/cloudflared.
Bumps the docker-dependency group with 2 updates in the /docker-compose/dawarich directory: freikin/dawarich and redis.
Bumps the docker-dependency group with 1 update in the /docker-compose/docuseal directory: docuseal/docuseal.
Bumps the docker-dependency group with 1 update in the /docker-compose/dozzle directory: amir20/dozzle.
Bumps the docker-dependency group with 1 update in the /docker-compose/gitea directory: gitea/gitea.
Bumps the docker-dependency group with 2 updates in the /docker-compose/immich directory: redis and [immich-app/immich-server](https://github.com/immich-app/immich).
Bumps the docker-dependency group with 1 update in the /docker-compose/karakeep directory: getmeili/meilisearch.
Bumps the docker-dependency group with 1 update in the /docker-compose/kener directory: rajnandan1/kener.
Bumps the docker-dependency group with 1 update in the /docker-compose/linkwarden directory: [linkwarden/linkwarden](https://github.com/linkwarden/linkwarden).
Bumps the docker-dependency group with 1 update in the /docker-compose/mealie directory: hkotel/mealie.
Bumps the docker-dependency group with 1 update in the /docker-compose/portainer directory: portainer/portainer-ce.
Bumps the docker-dependency group with 1 update in the /docker-compose/rustfs directory: redis.
Bumps the docker-dependency group with 1 update in the /docker-compose/speedtest-tracker directory: linuxserver/speedtest-tracker.
Bumps the docker-dependency group with 1 update in the /docker-compose/watcharr directory: [sbondco/watcharr](https://github.com/sbondCo/Watcharr).


Updates `atuinsh/atuin` from 18.12.0 to v18.13.3

Updates `cloudflare/cloudflared` from 2026.2.0 to 2026.3.0

Updates `freikin/dawarich` from 1.3.1 to 1.6.0

Updates `redis` from 7.4-alpine to 8.6-alpine

Updates `docuseal/docuseal` from 2.3.5 to 2.4.2

Updates `amir20/dozzle` from v10.0.6 to v10.2.1

Updates `gitea/gitea` from 1.25.4 to 1.25.5

Updates `redis` from 7.2.5 to 8.6.2

Updates `immich-app/immich-server` from v2.5.6 to v2.6.3
- [Release notes](https://github.com/immich-app/immich/releases)
- [Commits](https://github.com/immich-app/immich/compare/v2.5.6...v2.6.3)

Updates `getmeili/meilisearch` from v1.36.0 to v1.41.0

Updates `rajnandan1/kener` from 4.0.11 to v4.0.23

Updates `linkwarden/linkwarden` from v2.13.5 to v2.14.0
- [Release notes](https://github.com/linkwarden/linkwarden/releases)
- [Commits](https://github.com/linkwarden/linkwarden/compare/v2.13.5...v2.14.0)

Updates `hkotel/mealie` from v3.11.0 to v3.14.0

Updates `portainer/portainer-ce` from 2.39.0 to 2.39.1

Updates `redis` from 7.4-alpine to 8.6-alpine

Updates `linuxserver/speedtest-tracker` from 1.13.10 to 1.13.12

Updates `sbondco/watcharr` from v2.1.1 to v3.0.1
- [Release notes](https://github.com/sbondCo/Watcharr/releases)
- [Commits](https://github.com/sbondCo/Watcharr/compare/v2.1.1...v3.0.1)

---
updated-dependencies:
- dependency-name: atuinsh/atuin
  dependency-version: v18.13.3
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: cloudflare/cloudflared
  dependency-version: 2026.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: docker-dependency
- dependency-name: freikin/dawarich
  dependency-version: 1.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: docker-dependency
- dependency-name: redis
  dependency-version: 8.6-alpine
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: docuseal/docuseal
  dependency-version: 2.4.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: docker-dependency
- dependency-name: amir20/dozzle
  dependency-version: v10.2.1
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: gitea/gitea
  dependency-version: 1.25.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-dependency
- dependency-name: redis
  dependency-version: 8.6.2
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: docker-dependency
- dependency-name: immich-app/immich-server
  dependency-version: v2.6.3
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: getmeili/meilisearch
  dependency-version: v1.41.0
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: rajnandan1/kener
  dependency-version: v4.0.23
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: linkwarden/linkwarden
  dependency-version: v2.14.0
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: hkotel/mealie
  dependency-version: v3.14.0
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: portainer/portainer-ce
  dependency-version: 2.39.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-dependency
- dependency-name: redis
  dependency-version: 8.6-alpine
  dependency-type: direct:production
  dependency-group: docker-dependency
- dependency-name: linuxserver/speedtest-tracker
  dependency-version: 1.13.12
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-dependency
- dependency-name: sbondco/watcharr
  dependency-version: v3.0.1
  dependency-type: direct:production
  dependency-group: docker-dependency
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-27 22:27:29 +03:00
b1ackd0t 27a75683a9 Merge pull request #77 from rodneyosodo/CI
Add unified Dependabot config and GitHub Actions CI workflows
2026-04-27 22:25:47 +03:00
41 changed files with 629 additions and 184 deletions
+5 -5
View File
@@ -24,7 +24,7 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v6
uses: actions/checkout@v7
- name: Setup Python
uses: actions/setup-python@v6
@@ -38,13 +38,13 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v6
uses: actions/checkout@v7
- name: Pull docker images
run: |
cd docker-compose
cp default.env .env
docker compose pull
make validate
terraform:
runs-on: ubuntu-latest
@@ -55,7 +55,7 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v6
uses: actions/checkout@v7
- name: Setup Terraform
uses: hashicorp/setup-terraform@v4
@@ -77,7 +77,7 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v6
uses: actions/checkout@v7
- name: Setup Python
uses: actions/setup-python@v6
+28 -24
View File
@@ -1,28 +1,22 @@
TEMPLATE_FILE = compose-template.yaml
MAIN_COMPOSE = docker-compose.yaml
.PHONY: start
start:
start: ## Start docker compose services
@docker compose -f $(MAIN_COMPOSE) --env-file .env up -d
.PHONY: restart
restart:
restart: ## Restart docker compose services
@docker compose -f $(MAIN_COMPOSE) --env-file .env up -d --force-recreate
.PHONY: stop
stop:
stop: ## Stop docker compose services
@docker compose -f $(MAIN_COMPOSE) --env-file .env down
.PHONY: pull
pull:
pull: ## Pull latest images needed by docker compose services
@docker compose -f $(MAIN_COMPOSE) --env-file .env pull
.PHONY: clean
clean:
clean: ## Stop docker composition and remove orphans
@docker compose -f $(MAIN_COMPOSE) --env-file .env down --remove-orphans
.PHONY: generate
generate:
generate: ## Generate a compose file for new service i.e \033[33mmake generate service=<service_name>\033[0m
@if [ -z "$(service)" ]; then \
echo "Usage: make generate service=<service_name>"; \
exit 1; \
@@ -37,17 +31,27 @@ generate:
@echo "" >> $(MAIN_COMPOSE)
@echo "Docker-compose file for $(service) generated"
.PHONY: help
help:
validate: ## Validate that all images in docker compose config exist in registry
@IMAGES=$$(docker compose config --images); \
FAILED=0; \
for IMG in $$IMAGES; do \
echo "Checking if image exists in registry: $$IMG"; \
if docker manifest inspect "$$IMG" >/dev/null 2>&1; then \
echo "✅ Valid: $$IMG exists in the registry."; \
else \
echo "❌ Invalid: $$IMG could not be found or accessed."; \
FAILED=1; \
fi; \
done; \
if [ $$FAILED -ne 0 ]; then \
echo "Error: One or more Docker Compose images are invalid in the registry."; \
exit 1; \
fi; \
echo "All images are valid. Proceeding with CI pipeline."
help: ## Show this help message
@which awk > /dev/null || (echo "awk not found. Please install it from https://www.gnu.org/software/gawk/manual/gawk.html" && exit 1)
@echo ""
@echo "This Makefile provides a set of commands to manage Docker Compose services."
@echo "It allows you to start, stop, restart, pull, and generate new services."
@echo ""
@echo "Usage: make [target]"
@echo ""
@echo "Targets:"
@echo " start - Start the services"
@echo " restart - Restart the services"
@echo " stop - Stop the services"
@echo " pull - Pull the latest images"
@echo " generate service=<service_name> - Generate a new service eg: make generate service=demo"
@echo " help - Display this help message"
@awk 'BEGIN {FS = ":.*##"; printf "\nUsage:\n make \033[36m<target>\033[0m\n"} /^[$$()% a-zA-Z_-]+:.*?##/ { gsub(/\\033/, "\033", $$2); printf " \033[36m%-28s\033[0m %s\n", $$1, $$2 } /^##@/ { printf "\n\033[1m%s\033[0m\n", substr($$0, 5) } ' $(MAKEFILE_LIST)
+3 -3
View File
@@ -1,13 +1,13 @@
services:
atuin:
container_name: atuin
image: ghcr.io/atuinsh/atuin:18.12.0
image: ghcr.io/atuinsh/atuin:18.16.1
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
command: server start
command: start
volumes:
- ~/docker-volumes/atuin/config:/config
depends_on:
@@ -23,7 +23,7 @@ services:
atuin-db:
container_name: atuin-db
image: postgres:16.1
image: docker.io/postgres:16.1
restart: unless-stopped
networks:
- homelab-network
@@ -1,7 +1,7 @@
services:
cloudflared:
container_name: cloudflared
image: cloudflare/cloudflared:2026.2.0
image: docker.io/cloudflare/cloudflared:2026.5.2
restart: unless-stopped
command: tunnel --metrics 0.0.0.0:4090 --no-autoupdate run --token ${CLOUDFLARE_TOKEN}
networks:
@@ -0,0 +1,20 @@
services:
convertx:
container_name: convertx
image: ghcr.io/c4illin/convertx:v0.18.0
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
ports:
- "6010:3000"
environment:
- ACCOUNT_REGISTRATION=false
- JWT_SECRET=${CONVERTX_JWT_SECRET}
- HTTP_ALLOWED=true
- ALLOW_UNAUTHENTICATED=false
- AUTO_DELETE_EVERY_N_HOURS=24
- TZ=Africa/Nairobi
volumes:
- ~/docker-volumes/convertx/data:/app/data
+13 -13
View File
@@ -1,7 +1,7 @@
services:
dawarich-app:
container_name: dawarich-app
image: freikin/dawarich:1.3.1
image: docker.io/freikin/dawarich:1.7.11
volumes:
- ~/docker-volumes/dawarich/public:/var/app/public
- ~/docker-volumes/dawarich/watched:/var/app/tmp/imports/watched
@@ -13,7 +13,7 @@ services:
- no-new-privileges:true
ports:
- 5000:5000
# - 9394:9394 # Prometheus exporter, uncomment if needed
- 9394:9394
stdin_open: true
tty: true
entrypoint: web-entrypoint.sh
@@ -32,9 +32,11 @@ services:
- TIME_ZONE=Africa/Nairobi
- DISTANCE_UNIT=km
- APPLICATION_PROTOCOL=http
- PROMETHEUS_EXPORTER_ENABLED=false
- PROMETHEUS_EXPORTER_ENABLED=true
- PROMETHEUS_EXPORTER_HOST=0.0.0.0
- PROMETHEUS_EXPORTER_PORT=9394
- METRICS_USERNAME=${DAWARICH_METRICS_USERNAME}
- METRICS_PASSWORD=${DAWARICH_METRICS_PASSWORD}
- SECRET_KEY_BASE=${DAWARICH_SECRET_KEY_BASE}
- RAILS_LOG_TO_STDOUT="true"
- SELF_HOSTED=true
@@ -45,7 +47,6 @@ services:
- SMTP_USERNAME=${SMTP_NAME}
- SMTP_PASSWORD=${SMTP_PASSWORD}
- SMTP_FROM=${MAIL_FROM_ADDRESS}
healthcheck:
test:
[
@@ -71,7 +72,7 @@ services:
dawarich-sidekiq:
container_name: dawarich-sidekiq
image: freikin/dawarich:1.3.1
image: docker.io/freikin/dawarich:1.7.11
volumes:
- ~/docker-volumes/dawarich/public:/var/app/public
- ~/docker-volumes/dawarich/watched:/var/app/tmp/imports/watched
@@ -96,9 +97,11 @@ services:
- APPLICATION_HOSTS=${DAWARICH_APPLICATION_HOSTS}
- BACKGROUND_PROCESSING_CONCURRENCY=10
- APPLICATION_PROTOCOL=http
- PROMETHEUS_EXPORTER_ENABLED=false
- PROMETHEUS_EXPORTER_HOST=dawarich-app
- PROMETHEUS_EXPORTER_ENABLED=true
- PROMETHEUS_EXPORTER_HOST=dawarich-sidekiq
- PROMETHEUS_EXPORTER_PORT=9394
- METRICS_USERNAME=${DAWARICH_METRICS_USERNAME}
- METRICS_PASSWORD=${DAWARICH_METRICS_PASSWORD}
- SECRET_KEY_BASE=${DAWARICH_SECRET_KEY_BASE}
- RAILS_LOG_TO_STDOUT="true"
- SELF_HOSTED=true
@@ -109,7 +112,6 @@ services:
- SMTP_USERNAME=${SMTP_NAME}
- SMTP_PASSWORD=${SMTP_PASSWORD}
- SMTP_FROM=${MAIL_FROM_ADDRESS}
healthcheck:
test: ["CMD-SHELL", "pgrep -f sidekiq"]
interval: 10s
@@ -129,7 +131,7 @@ services:
dawarich-db:
container_name: dawarich-db
image: postgis/postgis:17-3.5-alpine
image: docker.io/postgis/postgis:17-3.5-alpine
restart: always
networks:
- homelab-network
@@ -155,17 +157,15 @@ services:
dawarich-redis:
container_name: dawarich-redis
image: redis:7.4-alpine
image: docker.io/redis:7.4-alpine
restart: always
networks:
- homelab-network
security_opt:
- no-new-privileges:true
command: /bin/sh -c "redis-server --requirepass ${DAWARICH_REDIS_PASSWORD}"
command: /bin/sh -c "redis-server --save 900 1 --save 300 10 --appendonly no --requirepass ${DAWARICH_REDIS_PASSWORD}"
volumes:
- ~/docker-volumes/dawarich/redis:/data
# ports:
# - 5001:6379
environment:
- REDIS_PASSWORD=${DAWARICH_REDIS_PASSWORD}
healthcheck:
+36 -11
View File
@@ -21,6 +21,7 @@ DOCUSEAL_POSTGRES_URL=""
GITEA_POSTGRES_DB=""
GITEA_POSTGRES_USER=""
GITEA_POSTGRES_PASSWORD=""
GITEA_RUNNER_REGISTRATION_TOKEN=""
## HEDGEDOC
HEDGEDOC_ALLOW_EMAIL_REGISTER=""
@@ -43,16 +44,6 @@ IMMICH_POSTGRES_USER=""
IMMICH_POSTGRES_PASSWORD=""
IMMICH_POSTGRES_DB=""
## LINKWARDEN
LINKWARDEN_NEXTAUTH_SECRET=""
LINKWARDEN_NEXTAUTH_URL=""
### LINKWARDEN DB
LINKWARDEN_POSTGRES_USER=""
LINKWARDEN_POSTGRES_PASSWORD=""
LINKWARDEN_POSTGRES_DB=""
LINKWARDEN_POSTGRES_URL=""
## MEALIE
MEALIE_BASE_URL=""
@@ -88,6 +79,10 @@ KENER_POSTGRES_PASSWORD=""
KENER_POSTGRES_DB=""
KENER_POSTGRES_URL=""
## KENER REDIS
KENER_REDIS_PASSWORD=""
KENER_REDIS_URL=""
## ATUIN
ATUIN_HOST="0.0.0.0"
ATUIN_PORT="9002"
@@ -109,6 +104,8 @@ KARAKEEP_MEILI_MASTER_KEY=""
## DAWARICH
DAWARICH_APPLICATION_HOSTS="localhost,::1,127.0.0.1"
DAWARICH_SECRET_KEY_BASE=""
DAWARICH_METRICS_USERNAME=""
DAWARICH_METRICS_PASSWORD=""
### DAWARICH POSTGRES
DAWARICH_POSTGRES_USER=""
@@ -123,4 +120,32 @@ DAWARICH_REDIS_URL=redis://dawarich-redis:6379
### RUSTFS
RUSTFS_ACCESS_KEY=""
RUSTFS_SECRET_KEY=""
RUSTFS_REDIS_PASSWORD=""
### PAPERLESS
PAPERLESS_SECRET_KEY=""
PAPERLESS_API_TOKEN=""
PAPERLESS_USERNAME=""
PAPERLESS_PUBLIC_URL=""
### PAPERLESS REDIS
PAPERLESS_REDIS_PASSWORD=""
PAPERLESS_REDIS_URL=""
### PAPERLESS POSTGRES
PAPERLESS_POSTGRES_USER=""
PAPERLESS_POSTGRES_PASSWORD=""
PAPERLESS_POSTGRES_DB=""
PAPERLESS_POSTGRES_URL=""
### GRAFANA
GRAFANA_ADMIN_USER="admin"
GRAFANA_ADMIN_PASSWORD="admin"
### TREK
TREK_ENCRYPTION_KEY=""
TREK_PUBLIC_URL=""
TREK_ADMIN_EMAIL=""
TREK_ADMIN_PASSWORD=""
## ConvertX
CONVERTX_JWT_SECRET=""
+27 -6
View File
@@ -13,9 +13,6 @@ include:
- path: ./portainer/docker-compose.yaml
project_directory: ..
env_file: .env
- path: ./uptime-kuma/docker-compose.yaml
project_directory: ..
env_file: .env
- path: ./heimdall/docker-compose.yaml
project_directory: ..
env_file: .env
@@ -61,9 +58,6 @@ include:
- path: ./hedgedoc/docker-compose.yaml
project_directory: ..
env_file: .env
- path: ./linkwarden/docker-compose.yaml
project_directory: ..
env_file: .env
- path: ./kener/docker-compose.yaml
project_directory: ..
env_file: .env
@@ -85,3 +79,30 @@ include:
- path: ./rustfs/docker-compose.yaml
project_directory: ..
env_file: .env
- path: ./ollama/docker-compose.yaml
project_directory: ..
env_file: .env
- path: ./paperless/docker-compose.yaml
project_directory: ..
env_file: .env
- path: ./node-exporter/docker-compose.yaml
project_directory: ..
env_file: .env
- path: ./victoria-metrics/docker-compose.yaml
project_directory: ..
env_file: .env
- path: ./grafana/docker-compose.yaml
project_directory: ..
env_file: .env
- path: ./it-tools/docker-compose.yaml
project_directory: ..
env_file: .env
- path: ./obsidian/docker-compose.yaml
project_directory: ..
env_file: .env
- path: ./trek/docker-compose.yaml
project_directory: ..
env_file: .env
- path: ./convertx/docker-compose.yaml
project_directory: ..
env_file: .env
+2 -2
View File
@@ -1,7 +1,7 @@
services:
docuseal:
container_name: docuseal
image: docuseal/docuseal:2.3.5
image: docker.io/docuseal/docuseal:3.0.2
restart: unless-stopped
networks:
- homelab-network
@@ -18,7 +18,7 @@ services:
docuseal-db:
container_name: docuseal-db
image: postgres:16.1
image: docker.io/postgres:16.1
restart: unless-stopped
networks:
- homelab-network
+4 -1
View File
@@ -1,7 +1,7 @@
services:
dozzle:
container_name: dozzle
image: amir20/dozzle:v10.0.6
image: docker.io/amir20/dozzle:v10.6.3
restart: unless-stopped
networks:
- homelab-network
@@ -9,7 +9,10 @@ services:
- no-new-privileges:true
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- ~/docker-volumes/dozzle/data:/data
ports:
- 3070:8080
environment:
- DOZZLE_NO_ANALYTICS=true
- DOZZLE_ENABLE_ACTIONS=true
- DOZZLE_ENABLE_SHELL=true
+28 -2
View File
@@ -1,7 +1,7 @@
services:
gitea:
container_name: gitea
image: gitea/gitea:1.25.4
image: docker.io/gitea/gitea:1.26.2
restart: unless-stopped
networks:
- homelab-network
@@ -22,6 +22,7 @@ services:
- GITEA__mailer__USER=${SMTP_NAME}
- GITEA__mailer__PASSWD="""${SMTP_PASSWORD}"""
- GITEA__service__DISABLE_REGISTRATION=true
- GITEA_RUNNER_REGISTRATION_TOKEN=${GITEA_RUNNER_REGISTRATION_TOKEN}
volumes:
- ~/docker-volumes/gitea/data:/data/
- /etc/timezone:/etc/timezone:ro
@@ -29,10 +30,16 @@ services:
ports:
- 4020:3000
- 4021:22
healthcheck:
test: ["CMD", "curl", "-f", "https://git.rodneyosodo.com"]
interval: 10s
retries: 3
start_period: 30s
timeout: 10s
gitea-db:
container_name: gitea-db
image: postgres:16.1
image: docker.io/postgres:16.1
restart: unless-stopped
networks:
- homelab-network
@@ -53,3 +60,22 @@ services:
interval: 5s
timeout: 5s
retries: 5
gitea-runner:
container_name: gitea-runner
image: docker.io/gitea/runner:1.0.7
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
environment:
- GITEA_INSTANCE_URL=https://git.rodneyosodo.com
- GITEA_RUNNER_REGISTRATION_TOKEN=${GITEA_RUNNER_REGISTRATION_TOKEN}
volumes:
- ~/docker-volumes/gitea/runner/data:/data
- /var/run/docker.sock:/var/run/docker.sock
depends_on:
gitea:
condition: service_healthy
restart: true
@@ -0,0 +1,21 @@
services:
grafana:
container_name: grafana
image: docker.io/grafana/grafana:13.1.0
restart: unless-stopped
user: root
networks:
- homelab-network
security_opt:
- no-new-privileges:true
ports:
- 3060:3000
environment:
- GF_SECURITY_ADMIN_USER=${GRAFANA_ADMIN_USER}
- GF_SECURITY_ADMIN_PASSWORD=${GRAFANA_ADMIN_PASSWORD}
- GF_INSTALL_PLUGINS=
- GF_PLUGINS_ENABLE_UPDATES=false
volumes:
- ~/docker-volumes/grafana/data:/var/lib/grafana
- ./docker-compose/grafana/provisioning/datasources:/etc/grafana/provisioning/datasources
- ./docker-compose/grafana/provisioning/dashboards:/etc/grafana/provisioning/dashboards
@@ -0,0 +1,11 @@
apiVersion: 1
providers:
- name: default
orgId: 1
folder:
type: file
disableDeletion: false
updateIntervalSeconds: 30
options:
path: /etc/grafana/provisioning/dashboards
@@ -0,0 +1,10 @@
apiVersion: 1
datasources:
- name: VictoriaMetrics
uid: victoriametrics
type: prometheus
access: proxy
url: http://victoria-metrics:4082
isDefault: true
editable: false
+4 -2
View File
@@ -1,7 +1,7 @@
services:
hedgedoc:
container_name: hedgedoc
image: quay.io/hedgedoc/hedgedoc:1.10.7
image: quay.io/hedgedoc/hedgedoc:1.10.8
restart: unless-stopped
networks:
- homelab-network
@@ -15,6 +15,8 @@ services:
- CMD_DOMAIN=${HEDGEDOC_DOMAIN_URL}
- CMD_SESSION_SECRET=${HEDGEDOC_SESSION_SECRET}
- CMD_DB_URL=${HEDGEDOC_POSTGRES_URL}
- NODE_ENV=production
- DEBUG=false
volumes:
- ~/docker-volumes/hedgedoc/uploads:/hedgedoc/public/uploads
ports:
@@ -24,7 +26,7 @@ services:
hedgedoc-db:
container_name: hedgedoc-db
image: postgres:16.1
image: docker.io/postgres:16.1
restart: unless-stopped
networks:
- homelab-network
+1 -1
View File
@@ -1,7 +1,7 @@
services:
heimdall:
container_name: heimdall
image: linuxserver/heimdall:2.7.6
image: docker.io/linuxserver/heimdall:2.7.6
restart: unless-stopped
networks:
- homelab-network
+3 -5
View File
@@ -1,7 +1,7 @@
services:
immich-server:
container_name: immich-server
image: ghcr.io/immich-app/immich-server:v2.5.6
image: ghcr.io/immich-app/immich-server:v2.7.5
restart: unless-stopped
networks:
- homelab-network
@@ -39,7 +39,7 @@ services:
immich-machine-learning:
container_name: immich-machine-learning
image: ghcr.io/immich-app/immich-machine-learning:v2.5.6
image: ghcr.io/immich-app/immich-machine-learning:v2.7.5
restart: unless-stopped
networks:
- homelab-network
@@ -49,8 +49,6 @@ services:
- ~/docker-volumes/immich/cache:/cache
healthcheck:
disable: false
devices:
- /dev/dri:/dev/dri
immich-postgres:
container_name: immich-postgres
@@ -71,7 +69,7 @@ services:
immich-redis:
container_name: immich-redis
image: redis:7.2.5
image: docker.io/redis:7.2.5
restart: unless-stopped
networks:
- homelab-network
@@ -0,0 +1,11 @@
services:
it-tools:
container_name: it-tools
image: docker.io/corentinth/it-tools:latest
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
ports:
- 5050:80
+6 -3
View File
@@ -1,7 +1,7 @@
services:
karakeep-app:
container_name: karakeep-app
image: ghcr.io/karakeep-app/karakeep:0.31.0
image: ghcr.io/karakeep-app/karakeep:0.32.0
restart: unless-stopped
networks:
- homelab-network
@@ -19,7 +19,10 @@ services:
- MEILI_ADDR=http://karakeep-meilisearch:7700
- MEILI_MASTER_KEY=${KARAKEEP_MEILI_MASTER_KEY}
- BROWSER_WEB_URL=http://karakeep-chrome:9222
- OPENAI_API_KEY=${OPENAI_API_KEY}
- OPENAI_API_KEY=ollama
- OPENAI_BASE_URL=http://ollama:11434/v1
- INFERENCE_TEXT_MODEL=llama3.2:3b
- INFERENCE_IMAGE_MODEL=minicpm-v:8b
- DATA_DIR=/data
- DISABLE_SIGNUPS=false
- CRAWLER_STORE_SCREENSHOT=true
@@ -44,7 +47,7 @@ services:
karakeep-meilisearch:
container_name: karakeep-meilisearch
image: getmeili/meilisearch:v1.36.0
image: docker.io/getmeili/meilisearch:v1.43.0
restart: unless-stopped
networks:
- homelab-network
+24 -3
View File
@@ -1,7 +1,7 @@
services:
kener:
container_name: kener
image: rajnandan1/kener:4.0.11
image: docker.io/rajnandan1/kener:v4.0.23
restart: unless-stopped
networks:
- homelab-network
@@ -15,14 +15,21 @@ services:
- KENER_SECRET_KEY=${KENER_SECRET_KEY}
- ORIGIN=${KENER_ORIGIN}
- DATABASE_URL=${KENER_POSTGRES_URL}
- REDIS_URL=${KENER_REDIS_URL}
- SMTP_HOST=${SMTP_HOST}
- SMTP_PORT=${SMTP_PORT}
- SMTP_USER=${SMTP_NAME}
- SMTP_PASSWORD=${SMTP_PASSWORD}
- SMTP_SENDER=${MAIL_FROM_ADDRESS}
- SMTP_SECURE=1
ports:
- 4040:4040
volumes:
- ~/docker-volumes/kener/uploads:/app/uploads:rw
- ~/docker-volumes/kener/data:/app/database
kener-db:
container_name: kener-db
image: postgres:16.1
image: docker.io/postgres:16.1
restart: unless-stopped
networks:
- homelab-network
@@ -43,3 +50,17 @@ services:
interval: 5s
timeout: 5s
retries: 5
kener-redis:
container_name: kener-redis
image: docker.io/redis:8-alpine
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
command: /bin/sh -c "redis-server --requirepass ${KENER_REDIS_PASSWORD}"
volumes:
- ~/docker-volumes/kener/redis:/data
environment:
- REDIS_PASSWORD=${KENER_REDIS_PASSWORD}
@@ -1,46 +0,0 @@
services:
linkwarden:
container_name: linkwarden
image: ghcr.io/linkwarden/linkwarden:v2.13.5
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
environment:
- NEXTAUTH_SECRET=${LINKWARDEN_NEXTAUTH_SECRET}
- NEXTAUTH_URL=${LINKWARDEN_NEXTAUTH_URL}
- DATABASE_URL=${LINKWARDEN_POSTGRES_URL}
- PAGINATION_TAKE_COUNT=20
- STORAGE_FOLDER=/data
- AUTOSCROLL_TIMEOUT=60
ports:
- 4030:3000
volumes:
- ~/docker-volumes/linkwarden/data:/var/lib/postgresql/data
depends_on:
- linkwarden-db
linkwarden-db:
container_name: linkwarden-db
image: postgres:16.1
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
volumes:
- ~/docker-volumes/linkwarden/db:/var/lib/postgresql/data
environment:
- POSTGRES_USER=${LINKWARDEN_POSTGRES_USER}
- POSTGRES_PASSWORD=${LINKWARDEN_POSTGRES_PASSWORD}
- POSTGRES_DB=${LINKWARDEN_POSTGRES_DB}
healthcheck:
test:
[
"CMD-SHELL",
"pg_isready -U '${LINKWARDEN_POSTGRES_USER}' -d '${LINKWARDEN_POSTGRES_DB}'",
]
interval: 5s
timeout: 5s
retries: 5
+1 -1
View File
@@ -1,7 +1,7 @@
services:
mealie:
container_name: mealie
image: hkotel/mealie:v3.11.0
image: docker.io/hkotel/mealie:v3.19.2
restart: unless-stopped
networks:
- homelab-network
@@ -0,0 +1,20 @@
services:
node-exporter:
container_name: node-exporter
image: docker.io/prom/node-exporter:v1.11.1
restart: unless-stopped
network_mode: host
pid: host
security_opt:
- no-new-privileges:true
volumes:
- /run/udev/data:/run/udev/data:ro
- /proc:/host/proc:ro
- /sys:/host/sys:ro
- /:/rootfs:ro
command:
- --web.listen-address=:5040
- --path.procfs=/host/proc
- --path.sysfs=/host/sys
- --path.rootfs=/rootfs
- --collector.filesystem.mount-points-exclude=^/(sys|proc|dev|host|etc)($$|/)
+1 -1
View File
@@ -1,7 +1,7 @@
services:
ntp:
container_name: ntp
image: cturra/ntp:latest
image: docker.io/cturra/ntp:latest
restart: unless-stopped
networks:
- homelab-network
@@ -0,0 +1,21 @@
services:
obsidian:
container_name: obsidian
image: lscr.io/linuxserver/obsidian:1.12.7
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
shm_size: 1gb
volumes:
- ~/docker-volumes/obsidian/config:/config
ports:
- 5080:5080
- 5081:5081
environment:
- TZ=Africa/Nairobi
- PGID=1000
- PUID=1000
- CUSTOM_PORT=5080
- CUSTOM_HTTPS_PORT=5081
+35
View File
@@ -0,0 +1,35 @@
services:
ollama:
container_name: ollama
image: docker.io/ollama/ollama:0.24.0
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
environment:
- TZ=Africa/Nairobi
- OLLAMA_KEEP_ALIVE=15m
- OLLAMA_HOST=0.0.0.0:11434
- OLLAMA_MODELS=ollama-models
volumes:
- ~/docker-volumes/ollama/data:/root/.ollama
- ~/docker-volumes/ollama/models:/ollama-models
open-webui:
container_name: open-webui
image: ghcr.io/open-webui/open-webui:v0.9.5
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
environment:
- TZ=Africa/Nairobi
- OLLAMA_BASE_URL=http://ollama:11434
depends_on:
- ollama
ports:
- 5020:8080
volumes:
- ~/docker-volumes/open-webui/data:/app/backend/data
+8 -2
View File
@@ -1,14 +1,15 @@
services:
opengist:
container_name: opengist
image: ghcr.io/thomiceli/opengist:1.12.1
image: ghcr.io/thomiceli/opengist:1.12.2
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
ports:
- 3020:6157 # HTTP port
- 3020:6157
- 3021:3021
# - 2222:2222 # SSH port, can be removed if you don't use SSH
volumes:
- ~/docker-volumes/opengist:/opengist
@@ -17,3 +18,8 @@ services:
- GID=1000
- OG_EXTERNAL_URL=https://gist.rodneyosodo.com
- OG_GIT_DEFAULT_BRANCH=main
- OG_METRICS_ENABLED=true
- OG_METRICS_HOST=0.0.0.0
- OG_METRICS_PORT=3021
- OG_SSH_GIT_ENABLED=false
- OG_LOG_LEVEL=warn
@@ -0,0 +1,160 @@
services:
paperless:
container_name: paperless
image: ghcr.io/paperless-ngx/paperless-ngx:2.20.15
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
environment:
- PAPERLESS_TIME_ZONE=Africa/Nairobi
- PAPERLESS_SECRET_KEY=${PAPERLESS_SECRET_KEY}
- PAPERLESS_OCR_LANGUAGE=eng
- PAPERLESS_REDIS=${PAPERLESS_REDIS_URL}
- PAPERLESS_DBENGINE=postgresql
- PAPERLESS_DBHOST=paperless-db
- PAPERLESS_DBNAME=${PAPERLESS_POSTGRES_DB}
- PAPERLESS_DBUSER=${PAPERLESS_POSTGRES_USER}
- PAPERLESS_DBPASS=${PAPERLESS_POSTGRES_PASSWORD}
- PAPERLESS_TIKA_ENABLED=1
- PAPERLESS_TIKA_GOTENBERG_ENDPOINT=http://gotenberg:3000
- PAPERLESS_TIKA_ENDPOINT=http://tika:9998
depends_on:
- paperless-db
- paperless-redis
- gotenberg
- tika
ports:
- 5030:8000
volumes:
- ~/docker-volumes/paperless/data:/usr/src/paperless/data
- ~/docker-volumes/paperless/media:/usr/src/paperless/media
- ~/docker-volumes/paperless/export:/usr/src/paperless/export
- ~/docker-volumes/paperless/consume:/usr/src/paperless/consume
paperless-db:
container_name: paperless-db
image: docker.io/postgres:18
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
volumes:
- ~/docker-volumes/paperless/db:/var/lib/postgresql
environment:
- POSTGRES_USER=${PAPERLESS_POSTGRES_USER}
- POSTGRES_PASSWORD=${PAPERLESS_POSTGRES_PASSWORD}
- POSTGRES_DB=${PAPERLESS_POSTGRES_DB}
healthcheck:
test:
[
"CMD-SHELL",
"pg_isready -U '${PAPERLESS_POSTGRES_USER}' -d '${PAPERLESS_POSTGRES_DB}'",
]
interval: 5s
timeout: 5s
retries: 5
paperless-redis:
container_name: paperless-redis
image: docker.io/redis:8
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
command: /bin/sh -c "redis-server --requirepass ${PAPERLESS_REDIS_PASSWORD}"
volumes:
- ~/docker-volumes/paperless/redis:/data
environment:
- REDIS_PASSWORD=${PAPERLESS_REDIS_PASSWORD}
gotenberg:
container_name: gotenberg
image: docker.io/gotenberg/gotenberg:8.33
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
command:
- "gotenberg"
- "--chromium-disable-javascript=true"
- "--chromium-allow-list=file:///tmp/.*"
tika:
container_name: tika
image: docker.io/apache/tika:latest
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
paperless-ai:
container_name: paperless-ai
image: docker.io/clusterzx/paperless-ai:latest
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
depends_on:
- ollama
- paperless
ports:
- 5031:3000
environment:
- TZ=Africa/Nairobi
- PAPERLESS_API_URL=http://paperless:8000/api
- PAPERLESS_API_TOKEN=${PAPERLESS_API_TOKEN}
- PAPERLESS_USERNAME=${PAPERLESS_USERNAME}
- AI_PROVIDER=ollama
- OLLAMA_API_URL=http://ollama:11434
- OLLAMA_MODEL=llama3.2:3b
- RAG_SERVICE_URL=http://localhost:8000
- RAG_SERVICE_ENABLED=true
- SCAN_INTERVAL=*/30 * * * *
- PAPERLESS_URL=http://paperless:8000/api
volumes:
- ~/docker-volumes/paperless/ai/data:/app/data
paperless-gpt:
container_name: paperless-gpt
image: docker.io/icereed/paperless-gpt:v0.25.1
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
depends_on:
- ollama
- paperless
ports:
- 5032:8080
environment:
- TZ=Africa/Nairobi
- PAPERLESS_BASE_URL=http://paperless:8000
- PAPERLESS_API_TOKEN=${PAPERLESS_API_TOKEN}
- PAPERLESS_PUBLIC_URL=${PAPERLESS_PUBLIC_URL}
- LLM_PROVIDER=ollama
- LLM_MODEL=llama3.2:3b
- OLLAMA_HOST=http://ollama:11434
- OLLAMA_CONTEXT_LENGTH=8192
- TOKEN_LIMIT=1000
- LLM_LANGUAGE=English
- OCR_PROVIDER=llm
- VISION_LLM_PROVIDER=ollama
- VISION_LLM_MODEL=minicpm-v:8b
- AUTO_OCR_TAG=paperless-gpt-ocr-auto
- AUTO_TAG=paperless-gpt-auto
- MANUAL_TAG=paperless-gpt-manual
- PDF_OCR_TAGGING=true
- PDF_OCR_COMPLETE_TAG=paperless-gpt-ocr-complete
- PDF_UPLOAD=false
- PDF_REPLACE=false
- LOG_LEVEL=info
volumes:
- ~/docker-volumes/paperless/gpt/prompts:/app/prompts
+26 -7
View File
@@ -1,23 +1,23 @@
services:
pihole:
container_name: pihole
image: pihole/pihole:2026.02.0
image: docker.io/pihole/pihole:2026.05.0
restart: unless-stopped
networks:
homelab-network:
ipv4_address: 172.30.0.100
ports:
- 2051:53/tcp
- 2051:53/udp
- 67:67/udp
- 53:53/tcp
- 53:53/udp
- 2050:80/tcp
environment:
- TZ=Africa/Nairobi
- WEBPASSWORD=${PIHOLE_WEBPASSWORD}
- PIHOLE_DNS_=172.30.0.101#2052
- DNSMASQ_LISTENING=all
- PIHOLE_UID=1000
- PIHOLE_GID=1000
- FTLCONF_webserver_api_password=${PIHOLE_WEBPASSWORD}
- FTLCONF_dns_listeningMode=ALL
- FTLCONF_dns_upstreams=172.30.0.101#2052
volumes:
- ~/docker-volumes/pihole:/etc/pihole
- ~/docker-volumes/pihole/etc-dnsmasq.d:/etc/dnsmasq.d
@@ -28,7 +28,7 @@ services:
unbound:
container_name: unbound
image: mvance/unbound:1.22.0
image: docker.io/mvance/unbound:1.22.0
restart: unless-stopped
networks:
homelab-network:
@@ -40,3 +40,22 @@ services:
- 2052:53/udp
security_opt:
- no-new-privileges:true
pihole-exporter:
container_name: pihole-exporter
image: docker.io/ekofr/pihole-exporter:v1.2.0
restart: unless-stopped
networks:
homelab-network:
ipv4_address: 172.30.0.110
environment:
- PIHOLE_HOSTNAME=172.30.0.100
- PIHOLE_PASSWORD=${PIHOLE_WEBPASSWORD}
- PORT=2051
- PIHOLE_PORT=80
- PIHOLE_PROTOCOL=http
- INTERVAL=30s
ports:
- 2051:2051
security_opt:
- no-new-privileges:true
+1 -1
View File
@@ -1,7 +1,7 @@
services:
portainer:
container_name: portainer
image: portainer/portainer-ce:2.39.0
image: docker.io/portainer/portainer-ce:2.42.0
restart: unless-stopped
networks:
- homelab-network
@@ -1,7 +1,7 @@
services:
prometheus:
container_name: prometheus
image: prom/prometheus:v3.10.0
image: docker.io/prom/prometheus:v3.12.0
restart: unless-stopped
networks:
- homelab-network
@@ -10,5 +10,6 @@ services:
ports:
- 4081:9090
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./docker-compose/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
- ~/docker-volumes/prometheus/data:/prometheus
+22 -2
View File
@@ -10,9 +10,29 @@ scrape_configs:
scheme: http
static_configs:
- targets:
- localhost:9090
- localhost:4082
- job_name: cloudflared
static_configs:
- targets:
- bohr:4090
- cloudflared:4090
- job_name: endlessh
static_configs:
- targets:
- endlessh:2112
- job_name: opengist
static_configs:
- targets:
- opengist:3021
- job_name: node
static_configs:
- targets:
- 192.168.100.32:5040
- job_name: pihole-exporter
static_configs:
- targets:
- pihole-exporter:2051
+1 -21
View File
@@ -1,7 +1,7 @@
services:
rustfs:
container_name: rustfs
image: rustfs/rustfs:latest
image: docker.io/rustfs/rustfs:latest
restart: unless-stopped
networks:
- homelab-network
@@ -38,23 +38,3 @@ services:
timeout: 10s
retries: 3
start_period: 40s
rustfs-redis:
container_name: rustfs-redis
image: redis:7.4-alpine
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
command: /bin/sh -c "redis-server --requirepass ${RUSTFS_REDIS_PASSWORD}"
volumes:
- ~/docker-volumes/rustfs/redis:/data
environment:
- REDIS_PASSWORD=${RUSTFS_REDIS_PASSWORD}
healthcheck:
test: ["CMD", "redis-cli", "--raw", "incr", "ping"]
interval: 10s
retries: 5
start_period: 30s
timeout: 10s
@@ -1,7 +1,7 @@
services:
speedtest-tracker:
container_name: speedtest-tracker
image: linuxserver/speedtest-tracker:1.13.10
image: docker.io/linuxserver/speedtest-tracker:1.14.3
restart: unless-stopped
networks:
- homelab-network
@@ -24,7 +24,7 @@ services:
- APP_TIMEZONE=Africa/Nairobi
- DISPLAY_TIMEZONE=Africa/Nairobi
- SPEEDTEST_SCHEDULE="*/15 * * * *"
- SPEEDTEST_SERVERS="9072,39001,14389"
- SPEEDTEST_SERVERS="8402,37726,38255"
volumes:
- ~/docker-volumes/speedtest-tracker/config:/config
- ~/docker-volumes/speedtest-tracker/web:/etc/ssl/web
@@ -33,7 +33,7 @@ services:
speedtest-tracker-db:
container_name: speedtest-tracker-db
image: postgres:16.1
image: docker.io/postgres:16.1
restart: unless-stopped
networks:
- homelab-network
@@ -1,7 +1,7 @@
services:
swagger-editor:
container_name: swagger-editor
image: swaggerapi/swagger-editor:next-v5
image: docker.io/swaggerapi/swagger-editor:v5.5.2
restart: unless-stopped
networks:
- homelab-network
+47
View File
@@ -0,0 +1,47 @@
services:
trek:
container_name: trek
image: docker.io/mauriceboe/trek:3.2.1
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
read_only: true
cap_drop:
- ALL
cap_add:
- CHOWN
- SETUID
- SETGID
tmpfs:
- /tmp:noexec,nosuid,size=128m
ports:
- "5090:5090"
environment:
- NODE_ENV=production
- PORT=5090
- ENCRYPTION_KEY=${TREK_ENCRYPTION_KEY}
- TZ=Africa/Nairobi
- LOG_LEVEL=info
- DEFAULT_LANGUAGE=en
- SESSION_DURATION=30d
- SESSION_DURATION_REMEMBER=30d
- ALLOWED_ORIGINS=${TREK_PUBLIC_URL}
- FORCE_HTTPS=true
- HSTS_INCLUDE_SUBDOMAINS=true
- COOKIE_SECURE=false
- TRUST_PROXY=1
- ALLOW_INTERNAL_NETWORK=true
- APP_URL=${TREK_PUBLIC_URL}
- ADMIN_EMAIL=${TREK_ADMIN_EMAIL}
- ADMIN_PASSWORD=${TREK_ADMIN_PASSWORD}
volumes:
- ~/docker-volumes/trek/data:/app/data
- ~/docker-volumes/trek/uploads:/app/uploads
healthcheck:
test: ["CMD", "wget", "-qO-", "http://localhost:3000/api/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 15s
@@ -1,14 +0,0 @@
services:
uptime-kuma:
container_name: uptime-kuma
image: louislam/uptime-kuma:1.23.17
restart: unless-stopped
networks:
- homelab-network
ports:
- 3001:3001
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ~/docker-volumes/uptime-kuma-data:/app/data
security_opt:
- no-new-privileges:true
@@ -1,7 +1,7 @@
services:
vaultwarden:
container_name: vaultwarden
image: vaultwarden/server:1.35.4
image: docker.io/vaultwarden/server:1.36.0
restart: unless-stopped
networks:
- homelab-network
@@ -0,0 +1,20 @@
services:
victoria-metrics:
container_name: victoria-metrics
image: docker.io/victoriametrics/victoria-metrics:v1.146.0
restart: unless-stopped
networks:
- homelab-network
security_opt:
- no-new-privileges:true
ports:
- 4082:4082
volumes:
- ./docker-compose/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml:ro
- ~/docker-volumes/victoria-metrics/data:/storage
command:
- -storageDataPath=/storage
- -retentionPeriod=90d
- -promscrape.config=/etc/prometheus/prometheus.yml
- -promscrape.config.strictParse=false
- -httpListenAddr=:4082
+1 -1
View File
@@ -1,7 +1,7 @@
services:
watcharr:
container_name: watcharr
image: ghcr.io/sbondco/watcharr:v2.1.1
image: ghcr.io/sbondco/watcharr:v3.0.1
restart: unless-stopped
networks:
- homelab-network