mirror of
https://github.com/nickyeoman/docker-compose-cookbooks.git
synced 2026-09-03 18:36:22 +00:00
complete all stack READMEs to the 9-section template
Existing content preserved and reordered to the canonical section order; missing sections generated from each stack's compose data (ports, volumes, env vars, image links). Fixes copy-paste errors in Dockhand sections (qbittorrent pointed at archivebox; invokeai/thunderbird said SERVICENAME) and persistant->persistent typos in gatus. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
+24
-2
@@ -12,21 +12,43 @@ ArchiveBox is a self-hosted app that lets you preserve content from websites in
|
|||||||
- **Documentation:** [Docs](https://github.com/ArchiveBox/ArchiveBox/wiki)
|
- **Documentation:** [Docs](https://github.com/ArchiveBox/ArchiveBox/wiki)
|
||||||
- **Reverse Proxy Port:** `8000`
|
- **Reverse Proxy Port:** `8000`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:8000 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
## Environment Variable Notes
|
## Environment Variable Notes
|
||||||
|
|
||||||
ARCHIVEBOX_IMAGE - you can lock the version like so: ```archivebox/archivebox:sha-1d49bee```
|
ARCHIVEBOX_IMAGE - you can lock the version like so: ```archivebox/archivebox:sha-1d49bee```
|
||||||
ARCHIVEBOX_UID - User 1000
|
ARCHIVEBOX_UID - User 1000
|
||||||
ARCHIVEBOX_GID - Group 1000
|
ARCHIVEBOX_GID - Group 1000
|
||||||
PYTHONUNBUFFERED - Ensures logs are output in real-time
|
PYTHONUNBUFFERED - Ensures logs are output in real-time
|
||||||
|
|
||||||
## Volume Notes
|
## Volume Notes
|
||||||
|
|
||||||
/data – just one volume
|
/data – just one volume
|
||||||
|
|
||||||
## Network Notes
|
## Network Notes
|
||||||
|
|
||||||
Requires proxy network
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name archivebox \
|
||||||
|
-p 8000:8000 \
|
||||||
|
-v /data/archivebox:/data \
|
||||||
|
archivebox/archivebox:stable
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
## Dockhand Stack, Deploy from Git
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
Cookbooks Repository
|
Cookbooks Repository
|
||||||
|
|||||||
@@ -3,3 +3,72 @@
|
|||||||
Here is the official doc: https://docs.goauthentik.io/install-config/install/docker-compose/
|
Here is the official doc: https://docs.goauthentik.io/install-config/install/docker-compose/
|
||||||
|
|
||||||
Authentik is on a 2 month release cycle and should be updated in order of release.
|
Authentik is on a 2 month release cycle and should be updated in order of release.
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Identity provider and SSO platform supporting OIDC, SAML, LDAP, and proxy authentication.
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [ghcr.io/goauthentik/server:2025.10.1](https://github.com/goauthentik/server)
|
||||||
|
- **Reverse Proxy Port:** `9000`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:9000 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
PG_DB – default: authentik
|
||||||
|
PG_USER – default: authentik
|
||||||
|
AUTHENTIK_TAG – default: 2025.10.1
|
||||||
|
PG_PASS – default: (none, must be set)
|
||||||
|
AUTHENTIK_PORT_HTTP – default: 9000
|
||||||
|
AUTHENTIK_PORT_HTTPS – default: 9443
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/var/lib/postgresql/data – host path /data/authentik/db
|
||||||
|
/media – host path /data/authentik/media
|
||||||
|
/templates – host path /data/authentik/custom-templates
|
||||||
|
/media – host path /data/authentik/media
|
||||||
|
/certs – host path /data/authentik/certs
|
||||||
|
/templates – host path /data/authentik/custom-templates
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name authentik \
|
||||||
|
-p 9000:9000 \
|
||||||
|
-p 9443:9443 \
|
||||||
|
-v /data/authentik/db:/var/lib/postgresql/data \
|
||||||
|
-v /data/authentik/media:/media \
|
||||||
|
-v /data/authentik/custom-templates:/templates \
|
||||||
|
-v /data/authentik/media:/media \
|
||||||
|
-v /data/authentik/certs:/certs \
|
||||||
|
ghcr.io/goauthentik/server:2025.10.1
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: authentik_dev
|
||||||
|
Compose file path: authentik_dev/compose.yaml
|
||||||
|
Additional env file (optional): authentik_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" authentik_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|||||||
@@ -65,6 +65,10 @@ docker run -d \
|
|||||||
ghcr.io/hotio/bazarr:release
|
ghcr.io/hotio/bazarr:release
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
## Dockhand Stack, Deploy from Git
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
- **Cookbooks Repository**
|
- **Cookbooks Repository**
|
||||||
|
|||||||
@@ -12,6 +12,63 @@ BookStack is a self-hosted wiki platform for organizing and storing documentatio
|
|||||||
- **Documentation:** [Docs](https://www.bookstackapp.com/docs/)
|
- **Documentation:** [Docs](https://www.bookstackapp.com/docs/)
|
||||||
- **Reverse Proxy Port:** `8080`
|
- **Reverse Proxy Port:** `8080`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:8080 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
BOOKSTACK_APP_KEY – default: ChangeThisPassword
|
||||||
|
BOOKSTACK_APP_TIMEZONE – default: America/Vancouver
|
||||||
|
BOOKSTACK_APP_URL – default: http://localhost:8080
|
||||||
|
BOOKSTACK_DB_DATABASE – default: bookstack
|
||||||
|
BOOKSTACK_DB_PASSWORD – default: ChangeThisPassword
|
||||||
|
BOOKSTACK_DB_USERNAME – default: dbuser
|
||||||
|
BOOKSTACK_REVISION_LIMIT – default: false
|
||||||
|
BOOKSTACK_PORT – default: 8080
|
||||||
|
MARIADB_ROOT_PASSWORD – default: ChangeThisPassword
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/var/www/bookstack/storage/uploads – host path /data/bookstack/uploads
|
||||||
|
/var/www/bookstack/public/uploads – host path /data/bookstack/public
|
||||||
|
/var/lib/mysql – host path /data/bookstack/db
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name bookstack \
|
||||||
|
-p 8080:8080 \
|
||||||
|
-v /data/bookstack/uploads:/var/www/bookstack/storage/uploads \
|
||||||
|
-v /data/bookstack/public:/var/www/bookstack/public/uploads \
|
||||||
|
-v /data/bookstack/db:/var/lib/mysql \
|
||||||
|
solidnerd/bookstack:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: bookstack
|
||||||
|
Compose file path: bookstack/compose.yaml
|
||||||
|
Additional env file (optional): bookstack/sample.env
|
||||||
|
|
||||||
|
Then "Load" bookstack/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|
||||||
### APP_KEY
|
### APP_KEY
|
||||||
|
|||||||
@@ -6,7 +6,76 @@
|
|||||||
|
|
||||||
Proxy port: 8055
|
Proxy port: 8055
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Instant headless CMS and admin app layered on top of a SQL database.
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [directus/directus:latest](https://hub.docker.com/r/directus/directus)
|
||||||
|
- **Reverse Proxy Port:** `8055`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:8000 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
MARIADB_DATABASE – default: directus
|
||||||
|
MARIADB_USER – default: directus
|
||||||
|
MARIADB_PASSWORD – default: ChangeThisPassword
|
||||||
|
MARIADB_ROOT_PASSWORD – default: ChangeThisPassword
|
||||||
|
DIRECTUS_SECRET – default: ChangeThisPassword
|
||||||
|
DIRECTUS_ADMIN_EMAIL – default: noreply@example.com
|
||||||
|
DIRECTUS_ADMIN_PASSWORD – default: ChangeThisPassword
|
||||||
|
DIRECTUS_PUBLIC_URL – default: http://localhost:8055
|
||||||
|
DIRECTUS_PORT – default: 8000
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/var/lib/mysql – host path /data/directus/db
|
||||||
|
/directus/uploads – host path /data/directus/uploads
|
||||||
|
/directus/extensions – host path /data/directus/extensions
|
||||||
|
/directus/templates – host path /data/directus/templates
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name directus \
|
||||||
|
-p 8000:8055 \
|
||||||
|
-v /data/directus/db:/var/lib/mysql \
|
||||||
|
-v /data/directus/uploads:/directus/uploads \
|
||||||
|
-v /data/directus/extensions:/directus/extensions \
|
||||||
|
-v /data/directus/templates:/directus/templates \
|
||||||
|
directus/directus:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: directus_dev
|
||||||
|
Compose file path: directus_dev/compose.yaml
|
||||||
|
Additional env file (optional): directus_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" directus_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|
||||||
## Other Containers
|
## Other Containers
|
||||||
|
|
||||||
You will also need mariadb and redis, something like:
|
You will also need mariadb and redis, something like:
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -55,6 +55,10 @@ docker network create proxy
|
|||||||
|
|
||||||
This is a multi-service stack — use `docker compose` instead of individual `docker run` commands.
|
This is a multi-service stack — use `docker compose` instead of individual `docker run` commands.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
## Dockhand Stack, Deploy from Git
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
- **Cookbooks Repository**
|
- **Cookbooks Repository**
|
||||||
|
|||||||
+63
-1
@@ -1,3 +1,65 @@
|
|||||||
# Duplicati
|
# Duplicati
|
||||||
|
|
||||||
Proxy port: 8200
|
Proxy port: 8200
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Encrypted backup software for securely storing backups to cloud or local destinations.
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [duplicati/duplicati:latest](https://hub.docker.com/r/duplicati/duplicati)
|
||||||
|
- **Reverse Proxy Port:** `8200`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:8200 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
DUPLICATI_KEY – default: ChangeThisPassword
|
||||||
|
DUPLICATI_PASS – default: ChangeThisPassword
|
||||||
|
DUPLICATI_PORT – default: 8200
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/data – host path /data/duplicati/config
|
||||||
|
/backups – host path /data/duplicati/backups
|
||||||
|
/source – host path /data/duplicati/source
|
||||||
|
/restore – host path /data/duplicati/restore
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name duplicati \
|
||||||
|
-p 8200:8200 \
|
||||||
|
-v /data/duplicati/config:/data \
|
||||||
|
-v /data/duplicati/backups:/backups \
|
||||||
|
-v /data/duplicati/source:/source:ro \
|
||||||
|
-v /data/duplicati/restore:/restore \
|
||||||
|
duplicati/duplicati:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: duplicati_dev
|
||||||
|
Compose file path: duplicati_dev/compose.yaml
|
||||||
|
Additional env file (optional): duplicati_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" duplicati_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|||||||
@@ -3,6 +3,69 @@
|
|||||||
A lightweight Docker Compose setup for running the **Filebrowser Quantum** container.
|
A lightweight Docker Compose setup for running the **Filebrowser Quantum** container.
|
||||||
The future of Filebrowser was in question so switched to Quantum.
|
The future of Filebrowser was in question so switched to Quantum.
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
* [Filebrowser Quantum on GitHub](https://github.com/gtsteffaniak/filebrowser/tree/main)
|
||||||
|
* [Getting Started Wiki](https://github.com/gtsteffaniak/filebrowser/wiki/Getting-Started)
|
||||||
|
* [Configuration Docs](https://github.com/gtsteffaniak/filebrowser/wiki/Configuration-And-Examples)
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [gtstef/filebrowser:latest](https://hub.docker.com/r/gtstef/filebrowser)
|
||||||
|
- **Reverse Proxy Port:** `80`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:8080 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
FILEBROWSER_CONFIG_PATH – default: /data/filebrowser
|
||||||
|
FILEBROWSER_CONFIG – default: /home/filebrowser/config.yaml
|
||||||
|
FILEBROWSER_ADMIN_PASSWORD – default: ChangeThisPassword
|
||||||
|
FILEBROWSER_PORT – default: 8080
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/srv – host path /data/storage
|
||||||
|
/home/filebrowser/data – host path /data/filebrowser/root
|
||||||
|
/home/filebrowser/config.yaml – host path /data/filebrowser/config.yaml
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name filebrowser \
|
||||||
|
-p 8080:80 \
|
||||||
|
-v /data/storage:/srv \
|
||||||
|
-v /data/filebrowser/root:/home/filebrowser/data \
|
||||||
|
-v /data/filebrowser/config.yaml:/home/filebrowser/config.yaml \
|
||||||
|
gtstef/filebrowser:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: filebrowser_dev
|
||||||
|
Compose file path: filebrowser_dev/compose.yaml
|
||||||
|
Additional env file (optional): filebrowser_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" filebrowser_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|
||||||
## Quick Notes
|
## Quick Notes
|
||||||
|
|
||||||
Proxy Port: 80
|
Proxy Port: 80
|
||||||
@@ -10,9 +73,3 @@ Proxy Port: 80
|
|||||||
Default user account:
|
Default user account:
|
||||||
* Username: admin
|
* Username: admin
|
||||||
* Password: admin
|
* Password: admin
|
||||||
|
|
||||||
## Overview
|
|
||||||
|
|
||||||
* [Filebrowser Quantum on GitHub](https://github.com/gtsteffaniak/filebrowser/tree/main)
|
|
||||||
* [Getting Started Wiki](https://github.com/gtsteffaniak/filebrowser/wiki/Getting-Started)
|
|
||||||
* [Configuration Docs](https://github.com/gtsteffaniak/filebrowser/wiki/Configuration-And-Examples)
|
|
||||||
|
|||||||
@@ -1,12 +1,65 @@
|
|||||||
# Firefly iii
|
# Firefly iii
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
||||||
Docker Hub: https://hub.docker.com/r/fireflyiii/core/tags
|
Docker Hub: https://hub.docker.com/r/fireflyiii/core/tags
|
||||||
Documentation: https://docs.firefly-iii.org/how-to/firefly-iii/installation/docker/
|
Documentation: https://docs.firefly-iii.org/how-to/firefly-iii/installation/docker/
|
||||||
Project: https://firefly-iii.org/
|
Project: https://firefly-iii.org/
|
||||||
Proxy Port: 8080
|
Proxy Port: 8080
|
||||||
Proxy Port Importer: 8080
|
Proxy Port Importer: 8080
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [fireflyiii/core:latest](https://hub.docker.com/r/fireflyiii/core)
|
||||||
|
- **Reverse Proxy Port:** `8080`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:8080 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
FIREFLY_PORT – default: 8080
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/var/www/html/storage/upload – host path /data/firefly
|
||||||
|
/var/www/html/storage/upload – host path /data/firefly
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name firefly \
|
||||||
|
-p 8080:8080 \
|
||||||
|
-v /data/firefly:/var/www/html/storage/upload \
|
||||||
|
-v /data/firefly:/var/www/html/storage/upload \
|
||||||
|
fireflyiii/core:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: firefly_dev
|
||||||
|
Compose file path: firefly_dev/compose.yaml
|
||||||
|
Additional env file (optional): firefly_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" firefly_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|
||||||
The Firefly III Data Importer will ask you for the Firefly III URL and a "Client ID".
|
The Firefly III Data Importer will ask you for the Firefly III URL and a "Client ID".
|
||||||
|
|||||||
+30
-12
@@ -11,26 +11,29 @@ Track uptime.
|
|||||||
- **Documentation:** [Docs](https://gatus.io/)
|
- **Documentation:** [Docs](https://gatus.io/)
|
||||||
- **Reverse Proxy Port:** `8080`
|
- **Reverse Proxy Port:** `8080`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:8080 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
GATUS_PORT – default: 8080
|
||||||
|
|
||||||
## Volume Notes
|
## Volume Notes
|
||||||
|
|
||||||
There are two mounts
|
There are two mounts
|
||||||
CONFIG_FILE - Where the yaml config file lives. Likely stored to a repo somewhere.
|
CONFIG_FILE - Where the yaml config file lives. Likely stored to a repo somewhere.
|
||||||
VOL_DATA - Which is the persistant data.
|
VOL_DATA - Which is the persistent data.
|
||||||
|
|
||||||
Note the db must be set in the config file for persistant to happen.
|
Note the db must be set in the config file for persistent to happen.
|
||||||
|
|
||||||
There is an example config.yaml file in this repo.
|
There is an example config.yaml file in this repo.
|
||||||
|
|
||||||
## Dockhand Stack, Deploy from Git
|
## Network Notes
|
||||||
|
|
||||||
Cookbooks Repository
|
Requires proxy network
|
||||||
stackname: Gatus
|
|
||||||
Compose file path: gatus/compose.yaml
|
|
||||||
Additional env file (optional): gatus/sample.env
|
|
||||||
|
|
||||||
Then "Load" gatus/sample.env into the Environmental variables in dockhand, then modify.
|
|
||||||
|
|
||||||
Create the Stack
|
|
||||||
|
|
||||||
## Docker Run
|
## Docker Run
|
||||||
|
|
||||||
@@ -43,4 +46,19 @@ docker run -d \
|
|||||||
-v /data/config.yml:/config/config.yaml \
|
-v /data/config.yml:/config/config.yaml \
|
||||||
-v /data/gatus:/config/data \
|
-v /data/gatus:/config/data \
|
||||||
twinproduction/gatus:latest
|
twinproduction/gatus:latest
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: Gatus
|
||||||
|
Compose file path: gatus/compose.yaml
|
||||||
|
Additional env file (optional): gatus/sample.env
|
||||||
|
|
||||||
|
Then "Load" gatus/sample.env into the Environmental variables in dockhand, then modify.
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|||||||
+21
-2
@@ -11,9 +11,15 @@ Self Hosted Git repository.
|
|||||||
- **Compose Example:** [Compose](https://docs.gitea.com/installation/install-with-docker)
|
- **Compose Example:** [Compose](https://docs.gitea.com/installation/install-with-docker)
|
||||||
- **Reverse Proxy Port:** `3000`
|
- **Reverse Proxy Port:** `3000`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:22 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
## Environment Variable Notes
|
## Environment Variable Notes
|
||||||
|
|
||||||
ENABLE_SWAGGER="true" – Lets you: Test API calls in browser, See endpoints, Debug integrations
|
ENABLE_SWAGGER="true" – Lets you: Test API calls in browser, See endpoints, Debug integrations
|
||||||
MAX_RESPONSE_ITEMS="15" – controls pagination limits for API responses
|
MAX_RESPONSE_ITEMS="15" – controls pagination limits for API responses
|
||||||
ROOT_URL - This is what Gitea uses for: Clone URLs, Redirects, Webhooks, OAuth callbacks
|
ROOT_URL - This is what Gitea uses for: Clone URLs, Redirects, Webhooks, OAuth callbacks
|
||||||
LOCAL_ROOT_URL - You can't change the port from 3000, so you don't need this with this configuration.
|
LOCAL_ROOT_URL - You can't change the port from 3000, so you don't need this with this configuration.
|
||||||
@@ -26,8 +32,21 @@ volumes are easy, one for gitea and one for mariadb.
|
|||||||
|
|
||||||
We connect to the proxy network and have an internal network for db.
|
We connect to the proxy network and have an internal network for db.
|
||||||
|
|
||||||
## Additional Notes / Gotchas
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name gitea \
|
||||||
|
-p 22:22 \
|
||||||
|
-p 3000:3000 \
|
||||||
|
-v /data/gitea/data:/data \
|
||||||
|
-v /data/gitea/db:/var/lib/mysql \
|
||||||
|
gitea/gitea:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
### 1000 User
|
### 1000 User
|
||||||
|
|
||||||
|
|||||||
@@ -159,6 +159,6 @@ stackname: handbrake
|
|||||||
Compose file path: handbrake/compose-cpu.yaml
|
Compose file path: handbrake/compose-cpu.yaml
|
||||||
Additional env file (optional): handbrake/sample.env
|
Additional env file (optional): handbrake/sample.env
|
||||||
|
|
||||||
Then "Load" handbrake/sample.env into the Environmental variables in dockhand
|
Then "Load" handbrake_notes/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
Create the Stack
|
Create the Stack
|
||||||
+60
-22
@@ -18,31 +18,15 @@ Requires a valid config.yaml before first startup.
|
|||||||
* Internal Service Port: 8080 (not exposed publicly)
|
* Internal Service Port: 8080 (not exposed publicly)
|
||||||
* Environment Variable Notes
|
* Environment Variable Notes
|
||||||
|
|
||||||
## Core Settings
|
## Getting Started
|
||||||
|
|
||||||
These variables are used in the Docker Compose file (.env):
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:PORT in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
```
|
## Environment Variable Notes
|
||||||
HEADSCALE_IMAGE – Docker image for Headscale server (default: headscale/headscale:latest)
|
|
||||||
HEADSCALE_UI_IMAGE – Docker image for admin UI
|
|
||||||
HEADSCALE_RESTART – Restart policy (default: unless-stopped)
|
|
||||||
HEADSCALE_UI_RESTART – Restart policy for UI container
|
|
||||||
|
|
||||||
# Paths
|
HEADSCALE_LOG_LEVEL – default: info
|
||||||
CONFIG_PATH – Location of configuration files (config.yaml)
|
|
||||||
DATA_PATH – Persistent database storage (SQLite)
|
|
||||||
LOG_PATH – Application logs
|
|
||||||
|
|
||||||
# System
|
|
||||||
TZ – Timezone (e.g. America/Vancouver)
|
|
||||||
HEADSCALE_LOG_LEVEL – Logging verbosity (info, debug, etc.)
|
|
||||||
Domain Configuration
|
|
||||||
HEADSCALE_DOMAIN – Public-facing domain used via reverse proxy
|
|
||||||
Example: headscale.4lt.ca
|
|
||||||
|
|
||||||
HEADSCALE_URL – Full URL used by Headscale clients
|
|
||||||
Must match your reverse proxy domain:
|
|
||||||
```
|
|
||||||
|
|
||||||
## Volume Notes
|
## Volume Notes
|
||||||
|
|
||||||
@@ -103,3 +87,57 @@ Ensure config.yaml exists in:
|
|||||||
./config/headscale/config/config.yaml
|
./config/headscale/config/config.yaml
|
||||||
Deploy stack
|
Deploy stack
|
||||||
Configure reverse proxy in Nginx Proxy Manager
|
Configure reverse proxy in Nginx Proxy Manager
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name headscale \
|
||||||
|
-v /data/headscale/config:/etc/headscale \
|
||||||
|
-v /data/headscale/data:/var/lib/headscale \
|
||||||
|
-v /data/headscale/logs:/var/log/headscale \
|
||||||
|
headscale/headscale:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: headscale_dev
|
||||||
|
Compose file path: headscale_dev/compose.yaml
|
||||||
|
Additional env file (optional): headscale_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" headscale_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|
||||||
|
## Core Settings
|
||||||
|
|
||||||
|
These variables are used in the Docker Compose file (.env):
|
||||||
|
|
||||||
|
```
|
||||||
|
HEADSCALE_IMAGE – Docker image for Headscale server (default: headscale/headscale:latest)
|
||||||
|
HEADSCALE_UI_IMAGE – Docker image for admin UI
|
||||||
|
HEADSCALE_RESTART – Restart policy (default: unless-stopped)
|
||||||
|
HEADSCALE_UI_RESTART – Restart policy for UI container
|
||||||
|
|
||||||
|
# Paths
|
||||||
|
CONFIG_PATH – Location of configuration files (config.yaml)
|
||||||
|
DATA_PATH – Persistent database storage (SQLite)
|
||||||
|
LOG_PATH – Application logs
|
||||||
|
|
||||||
|
# System
|
||||||
|
TZ – Timezone (e.g. America/Vancouver)
|
||||||
|
HEADSCALE_LOG_LEVEL – Logging verbosity (info, debug, etc.)
|
||||||
|
Domain Configuration
|
||||||
|
HEADSCALE_DOMAIN – Public-facing domain used via reverse proxy
|
||||||
|
Example: headscale.4lt.ca
|
||||||
|
|
||||||
|
HEADSCALE_URL – Full URL used by Headscale clients
|
||||||
|
Must match your reverse proxy domain:
|
||||||
|
```
|
||||||
|
|||||||
+39
-2
@@ -10,10 +10,47 @@ Heimdall is a lightweight web-based dashboard for organizing and launching your
|
|||||||
- **Container Image:** [Docker Hub](https://hub.docker.com/r/linuxserver/heimdall)
|
- **Container Image:** [Docker Hub](https://hub.docker.com/r/linuxserver/heimdall)
|
||||||
- **Reverse Proxy Port:** `80`
|
- **Reverse Proxy Port:** `80`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:8000 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
## Environment Variable Notes
|
## Environment Variable Notes
|
||||||
|
|
||||||
FORCE_HTTPS=true - For https
|
FORCE_HTTPS=true - For https
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/config – host path /data/heimdall
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name heimdall \
|
||||||
|
-p 8000:80 \
|
||||||
|
-v /data/heimdall:/config \
|
||||||
|
linuxserver/heimdall:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
## Additional Notes / Gotchas
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
Still working on the staging config, TODO: where is domain base path set?
|
Still working on the staging config, TODO: where is domain base path set?
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: heimdall
|
||||||
|
Compose file path: heimdall/compose.yaml
|
||||||
|
Additional env file (optional): heimdall/sample.env
|
||||||
|
|
||||||
|
Then "Load" heimdall/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|||||||
@@ -10,3 +10,53 @@ Proxy Port: 3000
|
|||||||
|
|
||||||
|
|
||||||
If you want to use the optional docker socket, you must run as root.
|
If you want to use the optional docker socket, you must run as root.
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [ghcr.io/gethomepage/homepage:latest](https://github.com/gethomepage/homepage)
|
||||||
|
- **Reverse Proxy Port:** `3000`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:3000 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
HOMEPAGE_PORT – default: 3000
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/app/config – host path /data/homepage/config
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name homepage \
|
||||||
|
-p 3000:3000 \
|
||||||
|
-v /data/homepage/config:/app/config \
|
||||||
|
ghcr.io/gethomepage/homepage:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: homepage_dev
|
||||||
|
Compose file path: homepage_dev/compose.yaml
|
||||||
|
Additional env file (optional): homepage_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" homepage_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|||||||
@@ -11,3 +11,80 @@ This repo is just a slight modification of [the source](https://github.com/invoi
|
|||||||
|
|
||||||
|
|
||||||
I'm not a big fan of all the licensing and paywall features.
|
I'm not a big fan of all the licensing and paywall features.
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Invoicing, payments, and client management for freelancers and small businesses.
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [nginx:alpine](https://hub.docker.com/_/nginx)
|
||||||
|
- **Reverse Proxy Port:** `80`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:8000 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
DB_DATABASE – default: ninja
|
||||||
|
DB_USERNAME – default: ninja
|
||||||
|
DB_PASSWORD – default: ChangeThisPassword
|
||||||
|
DB_ROOT_PASSWORD – default: ChangeThisPassword
|
||||||
|
APP_URL – default: http://localhost:8000
|
||||||
|
APP_KEY – default: ChangeThisPassword
|
||||||
|
APP_ENV – default: production
|
||||||
|
APP_DEBUG – default: false
|
||||||
|
REQUIRE_HTTPS – default: false
|
||||||
|
PHANTOMJS_PDF_GENERATION – default: false
|
||||||
|
PDF_GENERATOR – default: snappdf
|
||||||
|
TRUSTED_PROXIES – default: *
|
||||||
|
CACHE_DRIVER – default: redis
|
||||||
|
QUEUE_CONNECTION – default: redis
|
||||||
|
(see sample.env for the full list)
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/var/lib/mysql – host path /data/invoiceninja/mysql
|
||||||
|
/var/www/html/public – host path /data/invoiceninja/public
|
||||||
|
/var/www/html/storage – host path /data/invoiceninja/storage
|
||||||
|
/etc/nginx/conf.d – host path /data/invoiceninja/nginx
|
||||||
|
/var/www/html/public – host path /data/invoiceninja/public
|
||||||
|
/var/www/html/storage – host path /data/invoiceninja/storage
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name invoiceninja \
|
||||||
|
-p 8000:80 \
|
||||||
|
-v /data/invoiceninja/mysql:/var/lib/mysql \
|
||||||
|
-v /data/invoiceninja/public:/var/www/html/public \
|
||||||
|
-v /data/invoiceninja/storage:/var/www/html/storage \
|
||||||
|
-v /data/invoiceninja/nginx:/etc/nginx/conf.d:ro \
|
||||||
|
-v /data/invoiceninja/public:/var/www/html/public:ro \
|
||||||
|
nginx:alpine
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: invoiceninja_dev
|
||||||
|
Compose file path: invoiceninja_dev/compose.yaml
|
||||||
|
Additional env file (optional): invoiceninja_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" invoiceninja_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|||||||
+30
-12
@@ -11,22 +11,23 @@ Makes images, needs gpu.
|
|||||||
- **Documentation:** [Docs](https://invoke-ai.github.io/InvokeAI/)
|
- **Documentation:** [Docs](https://invoke-ai.github.io/InvokeAI/)
|
||||||
- **Reverse Proxy Port:** You Can set this in env, I have it set to 9090
|
- **Reverse Proxy Port:** You Can set this in env, I have it set to 9090
|
||||||
|
|
||||||
## Additional Notes / Gotchas
|
## Getting Started
|
||||||
|
|
||||||
To get started, go to the models tab and install: RealVisXL V3 or Juggernaut XL
|
1. Start the container: `docker compose up -d`
|
||||||
Also in the model manager, for upscale install: RealESRGAN_x4plus
|
2. Open http://localhost:9090 in your browser
|
||||||
And last install Tile SDXL version
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
## Dockhand Stack, Deploy from Git
|
## Environment Variable Notes
|
||||||
|
|
||||||
Cookbooks Repository
|
INVOKEAI_PORT – default: 9090
|
||||||
stackname: invokeai
|
|
||||||
Compose file path: invokeai/compose.yaml
|
|
||||||
Additional env file (optional): invokeai/sample.env
|
|
||||||
|
|
||||||
Then "Load" SERVICENAME/sample.env into the Environmental variables in dockhand
|
## Volume Notes
|
||||||
|
|
||||||
Create the Stack
|
/invokeai – host path /data/invokeai
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
## Docker Run
|
## Docker Run
|
||||||
|
|
||||||
@@ -40,4 +41,21 @@ docker run -d \
|
|||||||
-p 9090:9090 \
|
-p 9090:9090 \
|
||||||
--gpus all \
|
--gpus all \
|
||||||
ghcr.io/invoke-ai/invokeai:latest
|
ghcr.io/invoke-ai/invokeai:latest
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
To get started, go to the models tab and install: RealVisXL V3 or Juggernaut XL
|
||||||
|
Also in the model manager, for upscale install: RealESRGAN_x4plus
|
||||||
|
And last install Tile SDXL version
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: invokeai
|
||||||
|
Compose file path: invokeai/compose.yaml
|
||||||
|
Additional env file (optional): invokeai/sample.env
|
||||||
|
|
||||||
|
Then "Load" invokeai/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|||||||
@@ -11,3 +11,64 @@
|
|||||||
* 8920/tcp is used by default for HTTPS traffic. You can change this in the dashboard.
|
* 8920/tcp is used by default for HTTPS traffic. You can change this in the dashboard.
|
||||||
* 1900/udp is used for service auto-discovery. This is not configurable.
|
* 1900/udp is used for service auto-discovery. This is not configurable.
|
||||||
* 7359/udp is also used for auto-discovery. This is not configurable.
|
* 7359/udp is also used for auto-discovery. This is not configurable.
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [jellyfin/jellyfin:latest](https://hub.docker.com/r/jellyfin/jellyfin)
|
||||||
|
- **Reverse Proxy Port:** `8096`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:8096 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
JELLYFIN_URL – default: http://localhost:8096
|
||||||
|
JELLYFIN_PORT – default: 8096
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/cache – host path /data/jellyfin/cache
|
||||||
|
/config – host path /data/jellyfin/config
|
||||||
|
/books – host path /data/jellyfin/media/books
|
||||||
|
/movies – host path /data/jellyfin/media/movies
|
||||||
|
/music – host path /data/jellyfin/media/music
|
||||||
|
/photos – host path /data/jellyfin/media/photos
|
||||||
|
/shows – host path /data/jellyfin/media/shows
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name jellyfin \
|
||||||
|
-p 8096:8096 \
|
||||||
|
-v /data/jellyfin/cache:/cache \
|
||||||
|
-v /data/jellyfin/config:/config \
|
||||||
|
-v /data/jellyfin/media/books:/books \
|
||||||
|
-v /data/jellyfin/media/movies:/movies \
|
||||||
|
-v /data/jellyfin/media/music:/music \
|
||||||
|
jellyfin/jellyfin:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: jellyfin_dev
|
||||||
|
Compose file path: jellyfin_dev/compose.yaml
|
||||||
|
Additional env file (optional): jellyfin_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" jellyfin_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|||||||
@@ -61,6 +61,10 @@ docker run -d \
|
|||||||
ghcr.io/hotio/jellyseerr:release
|
ghcr.io/hotio/jellyseerr:release
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
## Dockhand Stack, Deploy from Git
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
- **Cookbooks Repository**
|
- **Cookbooks Repository**
|
||||||
|
|||||||
@@ -74,6 +74,10 @@ docker run -d \
|
|||||||
ghcr.io/hotio/lidarr:release
|
ghcr.io/hotio/lidarr:release
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
## Dockhand Stack, Deploy from Git
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
- **Cookbooks Repository**
|
- **Cookbooks Repository**
|
||||||
|
|||||||
+21
-2
@@ -14,6 +14,12 @@ initialization/upgrades, and support for reverse proxy integration.
|
|||||||
- **Documentation:** https://listmonk.app/docs/
|
- **Documentation:** https://listmonk.app/docs/
|
||||||
- **Reverse Proxy Port:** `9000` (configurable with `LISTMONK_PORT`)
|
- **Reverse Proxy Port:** `9000` (configurable with `LISTMONK_PORT`)
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:9000 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
## Environment Variable Notes
|
## Environment Variable Notes
|
||||||
|
|
||||||
Most variables are optional because sane defaults are already included
|
Most variables are optional because sane defaults are already included
|
||||||
@@ -52,7 +58,7 @@ These are only used during first startup.
|
|||||||
|
|
||||||
## Volume Notes
|
## Volume Notes
|
||||||
|
|
||||||
/data/listmonk/db
|
/data/listmonk/db
|
||||||
PostgreSQL database storage
|
PostgreSQL database storage
|
||||||
|
|
||||||
/data/listmonk/uploads
|
/data/listmonk/uploads
|
||||||
@@ -78,6 +84,19 @@ Internal application traffic uses the private:
|
|||||||
|
|
||||||
bridge network.
|
bridge network.
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name listmonk \
|
||||||
|
-p 9000:9000 \
|
||||||
|
-v /data/listmonk/db:/var/lib/postgresql \
|
||||||
|
-v /data/listmonk/uploads:/listmonk/uploads:rw \
|
||||||
|
listmonk/listmonk:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
## Additional Notes / Gotchas
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
- The stack automatically runs:
|
- The stack automatically runs:
|
||||||
@@ -109,4 +128,4 @@ Then load:
|
|||||||
|
|
||||||
into the Environmental Variables section in Dockhand.
|
into the Environmental Variables section in Dockhand.
|
||||||
|
|
||||||
Create the Stack.
|
Create the Stack.
|
||||||
|
|||||||
@@ -6,3 +6,59 @@ You could put it behind a reverse proxy.
|
|||||||
Uses sqlite by default but postgres is an option too.
|
Uses sqlite by default but postgres is an option too.
|
||||||
|
|
||||||
[Getting Started Wiki](https://docs.lubelogger.com/Installation/Getting%20Started)
|
[Getting Started Wiki](https://docs.lubelogger.com/Installation/Getting%20Started)
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Vehicle maintenance records and fuel mileage tracker.
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [ghcr.io/hargata/lubelogger:latest](https://github.com/hargata/lubelogger)
|
||||||
|
- **Reverse Proxy Port:** `8080`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:8080 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
LUBELOGGER_PORT – default: 8080
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/App/data – host path /data/lubelogger/data
|
||||||
|
/root/.aspnet/DataProtection-Keys – host path /data/lubelogger/keys
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name lubelogger \
|
||||||
|
-p 8080:8080 \
|
||||||
|
-v /data/lubelogger/data:/App/data \
|
||||||
|
-v /data/lubelogger/keys:/root/.aspnet/DataProtection-Keys \
|
||||||
|
ghcr.io/hargata/lubelogger:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: lubelogger_dev
|
||||||
|
Compose file path: lubelogger_dev/compose.yaml
|
||||||
|
Additional env file (optional): lubelogger_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" lubelogger_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|||||||
+56
-1
@@ -11,4 +11,59 @@ TODO:
|
|||||||
volumes:
|
volumes:
|
||||||
- "/etc/timezone:/etc/timezone:ro"
|
- "/etc/timezone:/etc/timezone:ro"
|
||||||
- "/etc/localtime:/etc/localtime:ro"
|
- "/etc/localtime:/etc/localtime:ro"
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Email testing tool: fake SMTP server with a web UI to inspect captured mail.
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [mailhog/mailhog:latest](https://hub.docker.com/r/mailhog/mailhog)
|
||||||
|
- **Reverse Proxy Port:** `1025`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:1025 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
MAILHOG_SMTP_PORT – default: 1025
|
||||||
|
MAILHOG_UI_PORT – default: 8025
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
No persistent volumes.
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name mailhog \
|
||||||
|
-p 1025:1025 \
|
||||||
|
-p 8025:8025 \
|
||||||
|
mailhog/mailhog:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: mailhog_dev
|
||||||
|
Compose file path: mailhog_dev/compose.yaml
|
||||||
|
Additional env file (optional): mailhog_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" mailhog_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|||||||
+60
-2
@@ -7,7 +7,65 @@ Proxy Port: 3306
|
|||||||
It will be quite uncommon to just use this compose file, it's likely you are extending this from another project.
|
It will be quite uncommon to just use this compose file, it's likely you are extending this from another project.
|
||||||
That's the main context of this container.
|
That's the main context of this container.
|
||||||
|
|
||||||
## Sample
|
## Overview
|
||||||
|
|
||||||
|
Standalone MariaDB database server for stacks that need shared SQL.
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [mariadb:latest](https://hub.docker.com/_/mariadb)
|
||||||
|
- **Reverse Proxy Port:** `3306`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:3306 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
MARIADB_DATABASE – default: mydb
|
||||||
|
MARIADB_ROOT_PASSWORD – default: ChangeThisPassword
|
||||||
|
MARIADB_USER – default: dbuser
|
||||||
|
MARIADB_PASSWORD – default: ChangeThisPassword
|
||||||
|
MARIADB_PORT – default: 3306
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/var/lib/mysql – host path /data/mariadb
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name mariadb \
|
||||||
|
-p 3306:3306 \
|
||||||
|
-v /data/mariadb:/var/lib/mysql \
|
||||||
|
mariadb:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Other stacks include their own database; this stack is for a shared or standalone instance.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: mariadb_dev
|
||||||
|
Compose file path: mariadb_dev/compose.yaml
|
||||||
|
Additional env file (optional): mariadb_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" mariadb_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|
||||||
|
## Sample
|
||||||
|
|
||||||
### Run multiple databases
|
### Run multiple databases
|
||||||
|
|
||||||
@@ -37,4 +95,4 @@ command: --max_allowed_packet=32505856
|
|||||||
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW --innodb-file-per-table=1 --skip-innodb-read-only-compressed
|
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW --innodb-file-per-table=1 --skip-innodb-read-only-compressed
|
||||||
# nextcloud
|
# nextcloud
|
||||||
command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW
|
command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -3,6 +3,67 @@
|
|||||||
Last Updated: Thu August 08, 2024 15:15:31 PDT
|
Last Updated: Thu August 08, 2024 15:15:31 PDT
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
||||||
Docker Hub: https://hub.docker.com/r/hkotel/mealie
|
Docker Hub: https://hub.docker.com/r/hkotel/mealie
|
||||||
Project: https://mealie.io/
|
Project: https://mealie.io/
|
||||||
Proxy Port: 9000
|
Proxy Port: 9000
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [hkotel/mealie:latest](https://hub.docker.com/r/hkotel/mealie)
|
||||||
|
- **Reverse Proxy Port:** `80`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:9000 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
MEALIE_BASE_URL – default: https://mealie.domain.com
|
||||||
|
MEALIE_DEFAULT_EMAIL – default: email@domain.com
|
||||||
|
MEALIE_PGID – default: 1000
|
||||||
|
MEALIE_PUID – default: 1000
|
||||||
|
MEALIE_RECIPE_DISABLE_AMOUNT – default: false
|
||||||
|
MEALIE_RECIPE_DISABLE_COMMENTS – default: false
|
||||||
|
MEALIE_RECIPE_LANDSCAPE_VIEW – default: true
|
||||||
|
MEALIE_RECIPE_PUBLIC – default: true
|
||||||
|
MEALIE_RECIPE_SHOW_ASSETS – default: true
|
||||||
|
MEALIE_RECIPE_SHOW_NUTRITION – default: true
|
||||||
|
MEALIE_PORT – default: 9000
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/app/data – host path /data/mealie
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name mealie \
|
||||||
|
-p 9000:80 \
|
||||||
|
-v /data/mealie:/app/data \
|
||||||
|
hkotel/mealie:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: mealie_dev
|
||||||
|
Compose file path: mealie_dev/compose.yaml
|
||||||
|
Additional env file (optional): mealie_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" mealie_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|||||||
+40
-21
@@ -16,9 +16,15 @@ Docker Compose setup for [n8n](https://n8n.io/), a workflow automation tool.
|
|||||||
- **Docker Hub Tags:** [Tags](https://hub.docker.com/r/n8nio/n8n/tags)
|
- **Docker Hub Tags:** [Tags](https://hub.docker.com/r/n8nio/n8n/tags)
|
||||||
- **Reverse Proxy Port:** `5678`
|
- **Reverse Proxy Port:** `5678`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:5678 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
## Environment Variable Notes
|
## Environment Variable Notes
|
||||||
|
|
||||||
N8N_IMAGE – Docker image tag (default: n8nio/n8n:latest)
|
N8N_IMAGE – Docker image tag (default: n8nio/n8n:latest)
|
||||||
N8N_PORT – Container port (default: 5678)
|
N8N_PORT – Container port (default: 5678)
|
||||||
N8N_HOST – Hostname for the n8n instance (default: localhost)
|
N8N_HOST – Hostname for the n8n instance (default: localhost)
|
||||||
N8N_PROTOCOL – Protocol (default: http; set to https behind NPM)
|
N8N_PROTOCOL – Protocol (default: http; set to https behind NPM)
|
||||||
@@ -26,34 +32,28 @@ Docker Compose setup for [n8n](https://n8n.io/), a workflow automation tool.
|
|||||||
N8N_SECURE_COOKIE – Set true when using HTTPS (default: true)
|
N8N_SECURE_COOKIE – Set true when using HTTPS (default: true)
|
||||||
WEBHOOK_URL – Public-facing webhook URL (default: http://localhost:5678)
|
WEBHOOK_URL – Public-facing webhook URL (default: http://localhost:5678)
|
||||||
|
|
||||||
## Reverse Proxy Setup (Nginx Proxy Manager)
|
|
||||||
|
|
||||||
1. In NPM, create a **Proxy Host**:
|
|
||||||
- **Domain Names:** `n8n.yourdomain.com`
|
|
||||||
- **Forward Hostname:** `n8n`
|
|
||||||
- **Forward Port:** `5678`
|
|
||||||
- **Scheme:** `http`
|
|
||||||
- **Websockets Support:** ✔ Enabled
|
|
||||||
- **Block Common Exploits:** ✔ Enabled
|
|
||||||
- **SSL:** ✔ Enable SSL (Let's Encrypt)
|
|
||||||
|
|
||||||
2. Override these env vars:
|
|
||||||
|
|
||||||
N8N_HOST=n8n.yourdomain.com
|
|
||||||
N8N_PROTOCOL=https
|
|
||||||
N8N_EDITOR_BASE_URL=https://n8n.yourdomain.com
|
|
||||||
WEBHOOK_URL=https://n8n.yourdomain.com
|
|
||||||
N8N_SECURE_COOKIE=true
|
|
||||||
|
|
||||||
## Volume Notes
|
## Volume Notes
|
||||||
|
|
||||||
${VOL_PATH}/n8n/data – n8n database and config (chown 1000:1000)
|
${VOL_PATH}/n8n/data – n8n database and config (chown 1000:1000)
|
||||||
${VOL_PATH}/n8n/files – shared file storage for workflows
|
${VOL_PATH}/n8n/files – shared file storage for workflows
|
||||||
|
|
||||||
## Network Notes
|
## Network Notes
|
||||||
|
|
||||||
Requires the external `proxy` network.
|
Requires the external `proxy` network.
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name n8n \
|
||||||
|
-p 5678:5678 \
|
||||||
|
-v /data/n8n/data:/home/node/.n8n \
|
||||||
|
-v /data/n8n/files:/files \
|
||||||
|
n8nio/n8n:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
## Additional Notes / Gotchas
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
- A license key is required (free at the time of writing).
|
- A license key is required (free at the time of writing).
|
||||||
@@ -74,3 +74,22 @@ Cookbooks Repository
|
|||||||
Then "Load" n8n/sample.env into the Environmental variables in dockhand
|
Then "Load" n8n/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
Create the Stack
|
Create the Stack
|
||||||
|
|
||||||
|
## Reverse Proxy Setup (Nginx Proxy Manager)
|
||||||
|
|
||||||
|
1. In NPM, create a **Proxy Host**:
|
||||||
|
- **Domain Names:** `n8n.yourdomain.com`
|
||||||
|
- **Forward Hostname:** `n8n`
|
||||||
|
- **Forward Port:** `5678`
|
||||||
|
- **Scheme:** `http`
|
||||||
|
- **Websockets Support:** ✔ Enabled
|
||||||
|
- **Block Common Exploits:** ✔ Enabled
|
||||||
|
- **SSL:** ✔ Enable SSL (Let's Encrypt)
|
||||||
|
|
||||||
|
2. Override these env vars:
|
||||||
|
|
||||||
|
N8N_HOST=n8n.yourdomain.com
|
||||||
|
N8N_PROTOCOL=https
|
||||||
|
N8N_EDITOR_BASE_URL=https://n8n.yourdomain.com
|
||||||
|
WEBHOOK_URL=https://n8n.yourdomain.com
|
||||||
|
N8N_SECURE_COOKIE=true
|
||||||
|
|||||||
+60
-1
@@ -3,6 +3,65 @@
|
|||||||
Docker Hub: https://hub.docker.com/_/nextcloud
|
Docker Hub: https://hub.docker.com/_/nextcloud
|
||||||
Proxy Port: 80
|
Proxy Port: 80
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Self-hosted file sync, sharing, and collaboration platform.
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [mariadb:latest](https://hub.docker.com/_/mariadb)
|
||||||
|
- **Reverse Proxy Port:** `n/a`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:PORT in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
NEXTCLOUD_DB – default: nextcloud
|
||||||
|
MARIADB_ROOT_PASSWORD – default: ChangeThisPassword
|
||||||
|
NEXTCLOUD_DB_USER – default: nextcloud
|
||||||
|
NEXTCLOUD_DB_PASSWORD – default: ChangeThisPassword
|
||||||
|
NEXTCLOUD_DB_HOST – default: nextcloud-db
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/var/lib/mysql – host path /data/nextcloud/db
|
||||||
|
/var/www/html – host path /data/nextcloud/data
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name nextcloud \
|
||||||
|
-v /data/nextcloud/db:/var/lib/mysql \
|
||||||
|
-v /data/nextcloud/data:/var/www/html \
|
||||||
|
mariadb:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
See `compose-aio.yaml` in this directory for the Nextcloud All-in-One variant.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: nextcloud
|
||||||
|
Compose file path: nextcloud/compose.yaml
|
||||||
|
Additional env file (optional): nextcloud/sample.env
|
||||||
|
|
||||||
|
Then "Load" nextcloud/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|
||||||
## Useful commands
|
## Useful commands
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -12,4 +71,4 @@ sudo -u www-data php occ maintenance:mode --on
|
|||||||
php occ trashbin:cleanup --all-users
|
php occ trashbin:cleanup --all-users
|
||||||
|
|
||||||
docker-compose exec --user www-data nextcloud php occ
|
docker-compose exec --user www-data nextcloud php occ
|
||||||
```
|
```
|
||||||
|
|||||||
+52
-1
@@ -3,11 +3,62 @@
|
|||||||
Last Updated: Thu August 01, 2024 18:40:57 PDT
|
Last Updated: Thu August 01, 2024 18:40:57 PDT
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
||||||
Docker Hub: https://hub.docker.com/r/nocodb/nocodb
|
Docker Hub: https://hub.docker.com/r/nocodb/nocodb
|
||||||
Project: https://nocodb.com/
|
Project: https://nocodb.com/
|
||||||
Docker Compose Example: https://github.com/nocodb/nocodb/blob/master/docker-compose/mysql/docker-compose.yml
|
Docker Compose Example: https://github.com/nocodb/nocodb/blob/master/docker-compose/mysql/docker-compose.yml
|
||||||
Proxy Port: 8080
|
Proxy Port: 8080
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [nocodb/nocodb:latest](https://hub.docker.com/r/nocodb/nocodb)
|
||||||
|
- **Reverse Proxy Port:** `8080`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:8080 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
NOCODB_PORT – default: 8080
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/usr/app/data – host path /data/nocodb
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name nocodb \
|
||||||
|
-p 8080:8080 \
|
||||||
|
-v /data/nocodb:/usr/app/data \
|
||||||
|
nocodb/nocodb:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: nocodb_dev
|
||||||
|
Compose file path: nocodb_dev/compose.yaml
|
||||||
|
Additional env file (optional): nocodb_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" nocodb_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|
||||||
## Description
|
## Description
|
||||||
|
|
||||||
This project is setup to use sql lite. Although it can use mysql with some env vars.
|
This project is setup to use sql lite. Although it can use mysql with some env vars.
|
||||||
@@ -15,4 +66,4 @@ This project is setup to use sql lite. Although it can use mysql with some env
|
|||||||
## Notes
|
## Notes
|
||||||
|
|
||||||
# environment:
|
# environment:
|
||||||
# - NC_DB=${NCDB_NC_DB:-mysql2://root_db:3306?u=noco&p=password&d=root_db}
|
# - NC_DB=${NCDB_NC_DB:-mysql2://root_db:3306?u=noco&p=password&d=root_db}
|
||||||
|
|||||||
+65
-2
@@ -11,6 +11,67 @@ Github (instructions): https://github.com/open-webui/open-webui
|
|||||||
Reverse Proxy Port webui: 8080 (The docker-compose sets the port to 3000)
|
Reverse Proxy Port webui: 8080 (The docker-compose sets the port to 3000)
|
||||||
Ollama Models: https://ollama.com/search
|
Ollama Models: https://ollama.com/search
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Local large language model runner with the Open WebUI front end.
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [ollama/ollama:latest](https://hub.docker.com/r/ollama/ollama)
|
||||||
|
- **Reverse Proxy Port:** `11434`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:11434 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
OLLAMA_KEEP_ALIVE – default: 5m
|
||||||
|
OLLAMA_PORT – default: 11434
|
||||||
|
WEBUI_URL – default: http://localhost:8080
|
||||||
|
WEBUI_PORT – default: 8080
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/root/.ollama – host path /data/ollama
|
||||||
|
/root/.cache – host path /data/webui/cache
|
||||||
|
/app/backend/data – host path /data/webui/data
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name ollama \
|
||||||
|
-p 11434:11434 \
|
||||||
|
-v /data/ollama:/root/.ollama \
|
||||||
|
-v /data/webui/cache:/root/.cache \
|
||||||
|
-v /data/webui/data:/app/backend/data \
|
||||||
|
ollama/ollama:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: ollama
|
||||||
|
Compose file path: ollama/compose.yaml
|
||||||
|
Additional env file (optional): ollama/sample.env
|
||||||
|
|
||||||
|
Then "Load" ollama/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|
||||||
## Preperation
|
## Preperation
|
||||||
|
|
||||||
You need to have nvidia-drivers, cuda and nvidia-container-toolkit installed before proceeding.
|
You need to have nvidia-drivers, cuda and nvidia-container-toolkit installed before proceeding.
|
||||||
@@ -22,6 +83,7 @@ docker run -d --runtime=nvidia --gpus=all -v ollama:/root/.ollama -p 11434:11434
|
|||||||
docker exec -it ollama ollama pull llama3
|
docker exec -it ollama ollama pull llama3
|
||||||
docker exec -it ollama ollama run llama3
|
docker exec -it ollama ollama run llama3
|
||||||
```
|
```
|
||||||
|
|
||||||
## Environment
|
## Environment
|
||||||
|
|
||||||
WEBUI_SECRET_KEY is just a random secret string used to secure sessions, cookies, and auth in your WebUI. ```openssl rand -hex 32```
|
WEBUI_SECRET_KEY is just a random secret string used to secure sessions, cookies, and auth in your WebUI. ```openssl rand -hex 32```
|
||||||
@@ -29,7 +91,7 @@ WEBUI_SECRET_KEY is just a random secret string used to secure sessions, cookies
|
|||||||
You could also set OLLAMA_KEEP_ALIVE=5m if you are running multiple models. 5m is default, 0 removes as soon as done (then would have to reload model, so not quick), more than 5m is longer (minutes).
|
You could also set OLLAMA_KEEP_ALIVE=5m if you are running multiple models. 5m is default, 0 removes as soon as done (then would have to reload model, so not quick), more than 5m is longer (minutes).
|
||||||
See "Docker Container Cheatsheet" below for how to remove models from memory.
|
See "Docker Container Cheatsheet" below for how to remove models from memory.
|
||||||
|
|
||||||
## Use
|
## Use
|
||||||
|
|
||||||
- [Ollama Models](https://ollama.com/search)
|
- [Ollama Models](https://ollama.com/search)
|
||||||
|
|
||||||
@@ -83,6 +145,7 @@ Straight docker run:
|
|||||||
```bash
|
```bash
|
||||||
docker run -d -p 3000:8080 --gpus all --add-host=host.docker.internal:host-gateway -v webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:cuda
|
docker run -d -p 3000:8080 --gpus all --add-host=host.docker.internal:host-gateway -v webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:cuda
|
||||||
```
|
```
|
||||||
|
|
||||||
## Recommended Pulls
|
## Recommended Pulls
|
||||||
|
|
||||||
For a NVIDIA GeForce RTX 5060 Ti, your GPU may vary.
|
For a NVIDIA GeForce RTX 5060 Ti, your GPU may vary.
|
||||||
@@ -117,4 +180,4 @@ Summarizing documents
|
|||||||
ollama pull granite3.2:8b-instruct
|
ollama pull granite3.2:8b-instruct
|
||||||
ollama pull cognitivetech/obook_summary:7b
|
ollama pull cognitivetech/obook_summary:7b
|
||||||
ollama pull bge-m3:8b
|
ollama pull bge-m3:8b
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -1,8 +1,81 @@
|
|||||||
# Open Archiver
|
# Open Archiver
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Self-hosted email archiving platform with full-text search.
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [logiclabshq/open-archiver:latest](https://hub.docker.com/r/logiclabshq/open-archiver)
|
||||||
|
- **Reverse Proxy Port:** `3000`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:3000 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
POSTGRES_DB – default: open_archive
|
||||||
|
POSTGRES_USER – default: admin
|
||||||
|
POSTGRES_PASSWORD – default: ChangeThisPassword
|
||||||
|
REDIS_PASSWORD – default: ChangeThisPassword
|
||||||
|
MEILI_MASTER_KEY – default: ChangeThisPassword
|
||||||
|
NODE_ENV – default: production
|
||||||
|
PORT_BACKEND – default: 4000
|
||||||
|
PORT_FRONTEND – default: 3000
|
||||||
|
SYNC_FREQUENCY – default: * * * * *
|
||||||
|
MEILI_HOST – default: http://meilisearch:7700
|
||||||
|
MEILI_INDEXING_BATCH – default: 500
|
||||||
|
REDIS_HOST – default: valkey
|
||||||
|
REDIS_PORT – default: 6379
|
||||||
|
REDIS_TLS_ENABLED – default: false
|
||||||
|
(see sample.env for the full list)
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/var/lib/postgresql/data – host path /data/openarchiver/pgdata
|
||||||
|
/data – host path /data/openarchiver/valkeydata
|
||||||
|
/meili_data – host path /data/openarchiver/meilidata
|
||||||
|
/var/data/open-archiver – host path /data/openarchiver/archiver-data
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name openarchiver \
|
||||||
|
-p 3000:3000 \
|
||||||
|
-v /data/openarchiver/pgdata:/var/lib/postgresql/data \
|
||||||
|
-v /data/openarchiver/valkeydata:/data \
|
||||||
|
-v /data/openarchiver/meilidata:/meili_data \
|
||||||
|
-v /data/openarchiver/archiver-data:/var/data/open-archiver \
|
||||||
|
logiclabshq/open-archiver:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: openarchiver_dev
|
||||||
|
Compose file path: openarchiver_dev/compose.yaml
|
||||||
|
Additional env file (optional): openarchiver_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" openarchiver_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|
||||||
## First Run
|
## First Run
|
||||||
|
|
||||||
Will give you a chance to setup a new user.
|
Will give you a chance to setup a new user.
|
||||||
|
|
||||||
You can add an ingestion source and it just starts importing.
|
You can add an ingestion source and it just starts importing.
|
||||||
|
|
||||||
|
|||||||
+54
-25
@@ -11,6 +11,60 @@ OpenCode is an open source AI coding agent.
|
|||||||
- **Documentation:** [Docs](https://opencode.ai/docs)
|
- **Documentation:** [Docs](https://opencode.ai/docs)
|
||||||
- **Reverse Proxy Port:** `4096`
|
- **Reverse Proxy Port:** `4096`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:4096 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
OPENCODE_PORT – default: 4096
|
||||||
|
OPENCODE_HOSTNAME – default: 0.0.0.0
|
||||||
|
OLLAMA_HOST_URL – default: http://localhost:11434
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
With `VOL_PATH=/data`:
|
||||||
|
|
||||||
|
| Container path | Host path | Purpose |
|
||||||
|
|---|---|---|
|
||||||
|
| `/config` | `/data/opencode/config` | Config files (config.json) |
|
||||||
|
| `/data` | `/data/opencode/data` | OpenCode state |
|
||||||
|
| `/projects` | `/data/opencode/projects` | Workspace/project files |
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name opencode \
|
||||||
|
-p 4096:4096 \
|
||||||
|
-v /data/opencode/config:/config \
|
||||||
|
-v /data/projects:/projects \
|
||||||
|
ghcr.io/anomalyco/opencode:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: opencode
|
||||||
|
Compose file path: opencode/compose.yaml
|
||||||
|
Additional env file (optional): opencode/sample.env
|
||||||
|
|
||||||
|
Then "Load" opencode/sample.env into the Environmental variables in dockhand.
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|
||||||
## Config file
|
## Config file
|
||||||
|
|
||||||
The `config.json` at `opencode/config/config.json` is pre-configured for
|
The `config.json` at `opencode/config/config.json` is pre-configured for
|
||||||
@@ -89,28 +143,3 @@ To use a host-side ollama instead, set `OLLAMA_HOST=http://host.docker.internal:
|
|||||||
- `OLLAMA_HOST` — Ollama API endpoint (default `http://localhost:11434`)
|
- `OLLAMA_HOST` — Ollama API endpoint (default `http://localhost:11434`)
|
||||||
- `OPENCODE_PORT` — Web UI port (default `4096`)
|
- `OPENCODE_PORT` — Web UI port (default `4096`)
|
||||||
- `VOL_PATH` — Base path for persistent data (default `/data`)
|
- `VOL_PATH` — Base path for persistent data (default `/data`)
|
||||||
|
|
||||||
## Volume Notes
|
|
||||||
|
|
||||||
With `VOL_PATH=/data`:
|
|
||||||
|
|
||||||
| Container path | Host path | Purpose |
|
|
||||||
|---|---|---|
|
|
||||||
| `/config` | `/data/opencode/config` | Config files (config.json) |
|
|
||||||
| `/data` | `/data/opencode/data` | OpenCode state |
|
|
||||||
| `/projects` | `/data/opencode/projects` | Workspace/project files |
|
|
||||||
|
|
||||||
## Network Notes
|
|
||||||
|
|
||||||
Requires proxy network
|
|
||||||
|
|
||||||
## dockhand Stack, Deploy from Git
|
|
||||||
|
|
||||||
Cookbooks Repository
|
|
||||||
stackname: opencode
|
|
||||||
Compose file path: opencode/compose.yaml
|
|
||||||
Additional env file (optional): opencode/sample.env
|
|
||||||
|
|
||||||
Then "Load" opencode/sample.env into the Environmental variables in dockhand.
|
|
||||||
|
|
||||||
Create the Stack
|
|
||||||
|
|||||||
@@ -1,5 +1,9 @@
|
|||||||
# Paperless
|
# Paperless
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Document management system that indexes your scanned paperwork.
|
||||||
|
|
||||||
## Project Details
|
## Project Details
|
||||||
|
|
||||||
- **Project Repository:** [Link](https://github.com/paperless-ngx/paperless-ngx)
|
- **Project Repository:** [Link](https://github.com/paperless-ngx/paperless-ngx)
|
||||||
@@ -8,6 +12,68 @@
|
|||||||
- **Documentation:** [Docs](https://docs.paperless-ngx.com/)
|
- **Documentation:** [Docs](https://docs.paperless-ngx.com/)
|
||||||
- **Reverse Proxy Port:** `8000`
|
- **Reverse Proxy Port:** `8000`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:8000 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
PAPERLESS_MARIADB_DATABASE – default: paperless
|
||||||
|
PAPERLESS_MARIADB_USER – default: paperless
|
||||||
|
PAPERLESS_MARIADB_PASSWORD – default: ChangeThisPassword
|
||||||
|
PAPERLESS_MARIADB_ROOT_PASSWORD – default: ChangeThisPassword
|
||||||
|
PAPERLESS_SECRET_KEY – default: ChangeThisPassword
|
||||||
|
PAPERLESS_OCR_LANGUAGE – default: eng
|
||||||
|
PAPERLESS_URL – default: http://localhost
|
||||||
|
PAPERLESS_CONSUMER_DELETE_DUPLICATES – default: 0
|
||||||
|
PAPERLESS_PORT – default: 8000
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/data – host path /data/paperless/redis
|
||||||
|
/var/lib/mysql – host path /data/paperless/db
|
||||||
|
/usr/src/paperless/data – host path /data/paperless/data
|
||||||
|
/usr/src/paperless/media – host path /data/paperless/media
|
||||||
|
/usr/src/paperless/export – host path /data/paperless/export
|
||||||
|
/usr/src/paperless/consume – host path /data/paperless/consume
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name paperless \
|
||||||
|
-p 8000:8000 \
|
||||||
|
-v /data/paperless/redis:/data \
|
||||||
|
-v /data/paperless/db:/var/lib/mysql \
|
||||||
|
-v /data/paperless/data:/usr/src/paperless/data \
|
||||||
|
-v /data/paperless/media:/usr/src/paperless/media \
|
||||||
|
-v /data/paperless/export:/usr/src/paperless/export \
|
||||||
|
ghcr.io/paperless-ngx/paperless-ngx:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: paperless
|
||||||
|
Compose file path: paperless/compose.yaml
|
||||||
|
Additional env file (optional): paperless/sample.env
|
||||||
|
|
||||||
|
Then "Load" paperless/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|
||||||
## First Run
|
## First Run
|
||||||
|
|
||||||
It takes a very long time for the first run to initilaze, v
|
It takes a very long time for the first run to initilaze, v
|
||||||
|
|||||||
@@ -11,3 +11,66 @@ docker compose exec peertube npm run reset-password -- -u root
|
|||||||
```
|
```
|
||||||
|
|
||||||
NOTICE: I've added this one for testing, it didn't fit what I was wanting, but I'll levae it here as it did boot.
|
NOTICE: I've added this one for testing, it didn't fit what I was wanting, but I'll levae it here as it did boot.
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Federated, peer-to-peer video hosting platform.
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [chocobozzz/peertube:production-bookworm](https://hub.docker.com/r/chocobozzz/peertube)
|
||||||
|
- **Reverse Proxy Port:** `9000`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:9000 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
PEERTUBE_HOSTNAME – default: localhost
|
||||||
|
PEERTUBE_ADMIN_EMAIL – default: admin@example.com
|
||||||
|
PEERTUBE_ADMIN_PASSWORD – default: ChangeThisPassword
|
||||||
|
PEERTUBE_PORT – default: 9000
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/var/lib/postgresql/data – host path /data/peertube/postgres
|
||||||
|
/data – host path /data/peertube/redis
|
||||||
|
/data – host path /data/peertube/data
|
||||||
|
/config – host path /data/peertube/config
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name peertube \
|
||||||
|
-p 9000:9000 \
|
||||||
|
-v /data/peertube/postgres:/var/lib/postgresql/data \
|
||||||
|
-v /data/peertube/redis:/data \
|
||||||
|
-v /data/peertube/data:/data \
|
||||||
|
-v /data/peertube/config:/config \
|
||||||
|
chocobozzz/peertube:production-bookworm
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: peertube_dev
|
||||||
|
Compose file path: peertube_dev/compose.yaml
|
||||||
|
Additional env file (optional): peertube_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" peertube_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|||||||
@@ -1 +1,65 @@
|
|||||||
# https://penpot.app/
|
# https://penpot.app/
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Open-source design and prototyping tool (Figma alternative).
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [penpotapp/frontend:latest](https://hub.docker.com/r/penpotapp/frontend)
|
||||||
|
- **Reverse Proxy Port:** `8080`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:9001 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
PENPOT_FLAGS – default: disable-email-verification enable-smtp enable-prepl-server disable-secure-session-cookies
|
||||||
|
PENPOT_PUBLIC_URI – default: http://localhost:9001
|
||||||
|
PENPOT_BODY_SIZE – default: 31457280
|
||||||
|
PENPOT_MULTIPART_SIZE – default: 367001600
|
||||||
|
PENPOT_SMTP_FROM – default: no-reply@example.com
|
||||||
|
PENPOT_TELEMETRY – default: true
|
||||||
|
PENPOT_PORT – default: 9001
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/var/lib/postgresql/data – host path /data/penpot/postgres
|
||||||
|
/opt/data/assets – host path /data/penpot/assets
|
||||||
|
/opt/data/assets – host path /data/penpot/assets
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name penpot \
|
||||||
|
-p 9001:8080 \
|
||||||
|
-v /data/penpot/postgres:/var/lib/postgresql/data \
|
||||||
|
-v /data/penpot/assets:/opt/data/assets \
|
||||||
|
-v /data/penpot/assets:/opt/data/assets \
|
||||||
|
penpotapp/frontend:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: penpot_dev
|
||||||
|
Compose file path: penpot_dev/compose.yaml
|
||||||
|
Additional env file (optional): penpot_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" penpot_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|||||||
@@ -12,6 +12,12 @@ This Docker Compose project deploys a Pi-hole DNS sinkhole and network-wide ad b
|
|||||||
- **Documentation:** [Docs](https://docs.docker.com/compose/install/)
|
- **Documentation:** [Docs](https://docs.docker.com/compose/install/)
|
||||||
- **Reverse Proxy Port:** `53 (tcp & udp), 80, 443, 67, 123`
|
- **Reverse Proxy Port:** `53 (tcp & udp), 80, 443, 67, 123`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:PORT in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
## Environment Variable Notes
|
## Environment Variable Notes
|
||||||
|
|
||||||
Below are the key environment variables commonly used with the Pi-hole container.
|
Below are the key environment variables commonly used with the Pi-hole container.
|
||||||
@@ -36,6 +42,22 @@ Pi-hole uses volumes to persist configuration and query data:
|
|||||||
/etc/dnsmasq.d – Stores dnsmasq configuration files used by Pi-hole’s DNS service.
|
/etc/dnsmasq.d – Stores dnsmasq configuration files used by Pi-hole’s DNS service.
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Uses `network_mode: host` (DNS server) — no proxy network.
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name pihole \
|
||||||
|
-v /data/pihole/etc:/etc/pihole \
|
||||||
|
-v /data/pihole/dnsmasq:/etc/dnsmasq.d \
|
||||||
|
pihole/pihole:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
## Additional Notes / Gotchas
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
DHCP Server: If running Pi-hole as your network DHCP server, the container must run in host networking mode to broadcast DHCP packets correctly.
|
DHCP Server: If running Pi-hole as your network DHCP server, the container must run in host networking mode to broadcast DHCP packets correctly.
|
||||||
@@ -47,3 +69,14 @@ Port Conflicts: Nothing else on the host may use port 53. Disable systemd-resolv
|
|||||||
Docker + Reverse Proxy: Pi-hole doesn’t always play nicely behind reverse proxies. If using one, forward only the admin interface (port 80) and keep DNS ports (53) exposed directly.
|
Docker + Reverse Proxy: Pi-hole doesn’t always play nicely behind reverse proxies. If using one, forward only the admin interface (port 80) and keep DNS ports (53) exposed directly.
|
||||||
|
|
||||||
Gravity Updates: Pi-hole updates blocklists daily. If using custom lists, verify they can be fetched without authentication or special headers.
|
Gravity Updates: Pi-hole updates blocklists daily. If using custom lists, verify they can be fetched without authentication or special headers.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: pihole
|
||||||
|
Compose file path: pihole/compose.yaml
|
||||||
|
Additional env file (optional): pihole/sample.env
|
||||||
|
|
||||||
|
Then "Load" pihole/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|||||||
@@ -2,3 +2,65 @@
|
|||||||
|
|
||||||
[Documentation](https://poste.io/doc/)
|
[Documentation](https://poste.io/doc/)
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
All-in-one mail server: SMTP, IMAP, webmail, antispam, and admin UI.
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [analogic/poste.io:latest](https://hub.docker.com/r/analogic/poste.io)
|
||||||
|
- **Reverse Proxy Port:** `25`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:25 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
POSTE_HOSTNAME – default: mail.yourdomain.com
|
||||||
|
POSTE_SMTP_PORT – default: 25
|
||||||
|
POSTE_POP3_PORT – default: 110
|
||||||
|
POSTE_IMAP_PORT – default: 143
|
||||||
|
POSTE_SUBMISSION_PORT – default: 587
|
||||||
|
POSTE_IMAPS_PORT – default: 993
|
||||||
|
POSTE_POP3S_PORT – default: 995
|
||||||
|
POSTE_SIEVE_PORT – default: 4190
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/data – host path /data/poste
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name poste \
|
||||||
|
-p 25:25 \
|
||||||
|
-p 110:110 \
|
||||||
|
-p 143:143 \
|
||||||
|
-v /data/poste:/data \
|
||||||
|
analogic/poste.io:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: poste_dev
|
||||||
|
Compose file path: poste_dev/compose.yaml
|
||||||
|
Additional env file (optional): poste_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" poste_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|||||||
@@ -61,6 +61,10 @@ docker run -d \
|
|||||||
ghcr.io/hotio/prowlarr:release
|
ghcr.io/hotio/prowlarr:release
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
## Dockhand Stack, Deploy from Git
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
- **Cookbooks Repository**
|
- **Cookbooks Repository**
|
||||||
|
|||||||
+62
-13
@@ -6,6 +6,67 @@ https://github.com/Trigus42/alpine-qbittorrentvpn
|
|||||||
|
|
||||||
port: 8080
|
port: 8080
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
BitTorrent client with a full-featured web UI.
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [trigus42/qbittorrentvpn:latest](https://hub.docker.com/r/trigus42/qbittorrentvpn)
|
||||||
|
- **Reverse Proxy Port:** `8080`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:8080 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
QBT_PASS – default: ChangeThisPassword
|
||||||
|
QBT_PORT – default: 8080
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/config – host path /data/qbit/config
|
||||||
|
/downloads – host path /data/qbit/downloads
|
||||||
|
/incomplete – host path /data/qbit/incomplete
|
||||||
|
/dev/net/tun – host path /dev/net/tun
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name qbittorrent \
|
||||||
|
-p 8080:8080 \
|
||||||
|
-v /data/qbit/config:/config \
|
||||||
|
-v /data/qbit/downloads:/downloads \
|
||||||
|
-v /data/qbit/incomplete:/incomplete \
|
||||||
|
-v /dev/net/tun:/dev/net/tun \
|
||||||
|
trigus42/qbittorrentvpn:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Check the container logs on first start for the temporary web UI password.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: qbittorrent
|
||||||
|
Compose file path: qbittorrent/compose.yaml
|
||||||
|
Additional env file (optional): qbittorrent/sample.env
|
||||||
|
|
||||||
|
Then "Load" qbittorrent/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|
||||||
## Default username
|
## Default username
|
||||||
|
|
||||||
Admin
|
Admin
|
||||||
@@ -20,18 +81,6 @@ The container will fail to boot if VPN_ENABLED is set and there is no valid INTE
|
|||||||
|
|
||||||
chmod 600 /path/to/wg0.conf
|
chmod 600 /path/to/wg0.conf
|
||||||
|
|
||||||
## Dockhand Stack, Deploy from Git
|
|
||||||
|
|
||||||
Cookbooks Repository
|
|
||||||
stackname: qbittorrent
|
|
||||||
Compose file path: qbittorrent/compose.yaml
|
|
||||||
Additional env file (optional): qbittorrent/sample.env
|
|
||||||
|
|
||||||
Then "Load" archivebox/sample.env into the Environmental variables in dockhand
|
|
||||||
|
|
||||||
Create the Stack
|
|
||||||
|
|
||||||
|
|
||||||
## Gotchas
|
## Gotchas
|
||||||
|
|
||||||
For the trigus42/qbittorrentvpn image the env Username doesn't work, it's just admin.
|
For the trigus42/qbittorrentvpn image the env Username doesn't work, it's just admin.
|
||||||
|
|||||||
@@ -70,6 +70,10 @@ docker run -d \
|
|||||||
ghcr.io/hotio/radarr:release
|
ghcr.io/hotio/radarr:release
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
## Dockhand Stack, Deploy from Git
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
- **Cookbooks Repository**
|
- **Cookbooks Repository**
|
||||||
|
|||||||
@@ -70,6 +70,10 @@ docker run -d \
|
|||||||
ghcr.io/hotio/readarr:release
|
ghcr.io/hotio/readarr:release
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
## Dockhand Stack, Deploy from Git
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
- **Cookbooks Repository**
|
- **Cookbooks Repository**
|
||||||
|
|||||||
@@ -70,6 +70,10 @@ docker run -d \
|
|||||||
ghcr.io/hotio/sonarr:release
|
ghcr.io/hotio/sonarr:release
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
## Dockhand Stack, Deploy from Git
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
- **Cookbooks Repository**
|
- **Cookbooks Repository**
|
||||||
|
|||||||
@@ -56,6 +56,10 @@ docker run -d \
|
|||||||
web
|
web
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
## Dockhand Stack, Deploy from Git
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
- **Cookbooks Repository**
|
- **Cookbooks Repository**
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
# Stash App Docker Compose Configuration
|
# Stash App Docker Compose Configuration
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
||||||
This Docker Compose configuration sets up the Stash application using Docker containers.
|
This Docker Compose configuration sets up the Stash application using Docker containers.
|
||||||
|
|
||||||
- Stash App: [Stash on Docker Hub](https://hub.docker.com/r/stashapp/stash)
|
- Stash App: [Stash on Docker Hub](https://hub.docker.com/r/stashapp/stash)
|
||||||
@@ -8,6 +9,65 @@ This Docker Compose configuration sets up the Stash application using Docker con
|
|||||||
- Documentation: https://docs.stashapp.cc/
|
- Documentation: https://docs.stashapp.cc/
|
||||||
- ProxyPort: 9999
|
- ProxyPort: 9999
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [stashapp/stash:latest](https://hub.docker.com/r/stashapp/stash)
|
||||||
|
- **Reverse Proxy Port:** `9999`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:9999 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
STASH_CONTENT_PATH – default: /data/stash
|
||||||
|
STASHAPP_CACHE – default: /cache/
|
||||||
|
STASHAPP_DOMAIN – default: stash.yourdomain.ca
|
||||||
|
STASHAPP_PORT – default: 9999
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/generated – host path /data/stash/generated
|
||||||
|
/metadata – host path /data/stash/metadata
|
||||||
|
/root/.stash – host path /data/stash/root
|
||||||
|
/data – host path /data/stash
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name stash \
|
||||||
|
-p 9999:9999 \
|
||||||
|
-v /data/stash/generated:/generated \
|
||||||
|
-v /data/stash/metadata:/metadata \
|
||||||
|
-v /data/stash/root:/root/.stash \
|
||||||
|
-v /data/stash:/data \
|
||||||
|
stashapp/stash:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Point STASH_CONTENT_PATH at your library; first-run wizard configures the library paths.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: stash
|
||||||
|
Compose file path: stash/compose.yaml
|
||||||
|
Additional env file (optional): stash/sample.env
|
||||||
|
|
||||||
|
Then "Load" stash/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|
||||||
## Setup
|
## Setup
|
||||||
|
|
||||||
### Data directories
|
### Data directories
|
||||||
|
|||||||
+61
-1
@@ -5,6 +5,66 @@ proxyport 8080
|
|||||||
|
|
||||||
See documentation: https://hub.docker.com/r/bitnami/suitecrm
|
See documentation: https://hub.docker.com/r/bitnami/suitecrm
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Open-source customer relationship management platform (SugarCRM fork).
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [bitnami/suitecrm:latest](https://hub.docker.com/r/bitnami/suitecrm)
|
||||||
|
- **Reverse Proxy Port:** `8080`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:8080 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
SUITECRM_DB_PASSWORD – default: ChangeThisPassword
|
||||||
|
MARIADB_ROOT_PASSWORD – default: ChangeThisPassword
|
||||||
|
SUITECRM_USER – default: admin
|
||||||
|
SUITECRM_PASS – default: ChangeThisPassword
|
||||||
|
SUITECRM_PORT – default: 8080
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/var/lib/mysql – host path /data/suitecrm/db
|
||||||
|
/bitnami/suitecrm – host path /data/suitecrm/data
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name suitecrm \
|
||||||
|
-p 8080:8080 \
|
||||||
|
-v /data/suitecrm/db:/var/lib/mysql \
|
||||||
|
-v /data/suitecrm/data:/bitnami/suitecrm \
|
||||||
|
bitnami/suitecrm:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: suitecrm_dev
|
||||||
|
Compose file path: suitecrm_dev/compose.yaml
|
||||||
|
Additional env file (optional): suitecrm_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" suitecrm_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|
||||||
## Gotchas
|
## Gotchas
|
||||||
|
|
||||||
1. they sometimes change variable names.
|
1. they sometimes change variable names.
|
||||||
@@ -13,4 +73,4 @@ See documentation: https://hub.docker.com/r/bitnami/suitecrm
|
|||||||
|
|
||||||
imap is not enabled by default as it's last update was 2011.
|
imap is not enabled by default as it's last update was 2011.
|
||||||
|
|
||||||
I don't yet have a process of updating this container for imap. Looking for alternative container providers.
|
I don't yet have a process of updating this container for imap. Looking for alternative container providers.
|
||||||
|
|||||||
+31
-4
@@ -12,6 +12,12 @@ The web interface also offers audio playback, seamless clipboard sharing, an int
|
|||||||
- **Container Image:** [Docker Hub](https://hub.docker.com/r/jlesage/thunderbird)
|
- **Container Image:** [Docker Hub](https://hub.docker.com/r/jlesage/thunderbird)
|
||||||
- **Reverse Proxy Port:** `5800`
|
- **Reverse Proxy Port:** `5800`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:5800 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
## Environment Variable Notes
|
## Environment Variable Notes
|
||||||
|
|
||||||
THUNDERBIRD_IMAGE=jlesage/thunderbird:latest
|
THUNDERBIRD_IMAGE=jlesage/thunderbird:latest
|
||||||
@@ -29,13 +35,34 @@ THUNDERBIRD_SECURE_CONNECTION=1
|
|||||||
I use the import/export plugin for thunderbird so I've added an optional volume:
|
I use the import/export plugin for thunderbird so I've added an optional volume:
|
||||||
```thunderbird-export:/export```
|
```thunderbird-export:/export```
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name thunderbird \
|
||||||
|
-p 5800:5800 \
|
||||||
|
-v /data/thunderbird/config:/config \
|
||||||
|
-v /data/thunderbird/export:/export \
|
||||||
|
jlesage/thunderbird
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
GUI app streamed to the browser — unauthenticated by default aside from the web password, keep it behind the proxy.
|
||||||
|
|
||||||
## Dockhand Stack, Deploy from Git
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
Cookbooks Repository
|
Cookbooks Repository
|
||||||
stackname: NAME_HERE
|
stackname: NAME_HERE
|
||||||
Compose file path: SERVICENAME/compose.yaml
|
Compose file path: thunderbird/compose.yaml
|
||||||
Additional env file (optional): SERVICENAME/sample.env
|
Additional env file (optional): thunderbird/sample.env
|
||||||
|
|
||||||
Then "Load" SERVICENAME/sample.env into the Environmental variables in dockhand
|
Then "Load" thunderbird/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
Create the Stack
|
Create the Stack
|
||||||
|
|||||||
+34
-6
@@ -10,6 +10,12 @@ VS Code
|
|||||||
- **Container Image:** [Docker Hub](https://hub.docker.com/r/linuxserver/code-server)
|
- **Container Image:** [Docker Hub](https://hub.docker.com/r/linuxserver/code-server)
|
||||||
- **Reverse Proxy Port:** `8443`
|
- **Reverse Proxy Port:** `8443`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:8443 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
## Environment Variable Notes
|
## Environment Variable Notes
|
||||||
|
|
||||||
Data directory:
|
Data directory:
|
||||||
@@ -19,7 +25,29 @@ Data directory:
|
|||||||
This is where all your code is stored, it should be set to your 1000 user. Then you can move your code here as that user.
|
This is where all your code is stored, it should be set to your 1000 user. Then you can move your code here as that user.
|
||||||
|
|
||||||
Config Directory:
|
Config Directory:
|
||||||
This is your home directory, your ssh keys are stored here.
|
This is your home directory, your ssh keys are stored here.
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/data – host path /data/projects
|
||||||
|
/config – host path /data/vscode/config
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name vscode \
|
||||||
|
-p 8443:8443 \
|
||||||
|
-v /data/projects:/data \
|
||||||
|
-v /data/vscode/config:/config \
|
||||||
|
lscr.io/linuxserver/code-server:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
## Additional Notes / Gotchas
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
@@ -41,10 +69,6 @@ ssh-keygen -t ed25519 -C "c@nickyeoman.com"
|
|||||||
cat ~/.ssh/id_ed25519.pub
|
cat ~/.ssh/id_ed25519.pub
|
||||||
```
|
```
|
||||||
|
|
||||||
## Nginx Proxy manager
|
|
||||||
|
|
||||||
If you are placing this behind NPM then you need to enable web sockets.
|
|
||||||
|
|
||||||
## Dockhand Stack, Deploy from Git
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
Cookbooks Repository
|
Cookbooks Repository
|
||||||
@@ -54,4 +78,8 @@ Additional env file (optional): vscode/sample.env
|
|||||||
|
|
||||||
Then "Load" vscode/sample.env into the Environmental variables in dockhand
|
Then "Load" vscode/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
Create the Stack
|
Create the Stack
|
||||||
|
|
||||||
|
## Nginx Proxy manager
|
||||||
|
|
||||||
|
If you are placing this behind NPM then you need to enable web sockets.
|
||||||
|
|||||||
@@ -70,6 +70,10 @@ docker run -d \
|
|||||||
ghcr.io/hotio/whisparr:release
|
ghcr.io/hotio/whisparr:release
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
Nothing specific to this stack so far.
|
||||||
|
|
||||||
## Dockhand Stack, Deploy from Git
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
- **Cookbooks Repository**
|
- **Cookbooks Repository**
|
||||||
|
|||||||
@@ -14,3 +14,85 @@ mkdir -p data/elasticsearch
|
|||||||
chown -R 1000:1000 data/
|
chown -R 1000:1000 data/
|
||||||
chmod -R 755 data/elasticsearch/
|
chmod -R 755 data/elasticsearch/
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Helpdesk and ticketing system with web, email, and chat channels.
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Container Image:** [ghcr.io/zammad/zammad:latest](https://github.com/zammad/zammad)
|
||||||
|
- **Reverse Proxy Port:** `8080`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:8080 in your browser
|
||||||
|
3. Follow the initial setup wizard to configure the application
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
POSTGRES_VERSION – default: 17.5-alpine
|
||||||
|
POSTGRES_DB – default: zammad_production
|
||||||
|
POSTGRES_USER – default: zammad
|
||||||
|
POSTGRES_PASS – default: ChangeThisPassword
|
||||||
|
REDIS_VERSION – default: 7.4.5-alpine
|
||||||
|
MEMCACHE_VERSION – default: 1.6.39-alpine
|
||||||
|
ELASTICSEARCH_VERSION – default: 8.19.2
|
||||||
|
ELASTICSEARCH_JAVA_OPTS – default: -Xms1g -Xmx1g
|
||||||
|
MEMCACHE_SERVERS – default: zammad-memcached:11211
|
||||||
|
POSTGRES_HOST – default: zammad-postgresql
|
||||||
|
POSTGRES_PORT – default: 5432
|
||||||
|
POSTGRESQL_OPTIONS – default: ?pool=50
|
||||||
|
POSTGRESQL_DB_CREATE – default: true
|
||||||
|
REDIS_URL – default: redis://zammad-redis:6379
|
||||||
|
(see sample.env for the full list)
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
/var/lib/postgresql/data – host path /data/zammad/postgresql
|
||||||
|
/data – host path /data/zammad/redis
|
||||||
|
/data – host path /data/zammad/memcached
|
||||||
|
/usr/share/elasticsearch/data – host path /data/zammad/elasticsearch
|
||||||
|
/opt/zammad/storage – host path /data/zammad/storage
|
||||||
|
/opt/zammad/storage – host path /data/zammad/storage
|
||||||
|
/opt/zammad/storage – host path /data/zammad/storage
|
||||||
|
/opt/zammad/storage – host path /data/zammad/storage
|
||||||
|
/var/tmp/zammad – host path /data/zammad/backup
|
||||||
|
/opt/zammad/storage – host path /data/zammad/storage
|
||||||
|
/opt/zammad/storage – host path /data/zammad/storage
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires proxy network
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name zammad \
|
||||||
|
-p 8080:8080 \
|
||||||
|
-v /data/zammad/postgresql:/var/lib/postgresql/data \
|
||||||
|
-v /data/zammad/redis:/data \
|
||||||
|
-v /data/zammad/memcached:/data \
|
||||||
|
-v /data/zammad/elasticsearch:/usr/share/elasticsearch/data \
|
||||||
|
-v /data/zammad/storage:/opt/zammad/storage \
|
||||||
|
ghcr.io/zammad/zammad:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
See compose.yaml for the full set of environment variables.
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
The zammad-init service intentionally uses `restart: on-failure` (one-shot init container).
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: zammad_dev
|
||||||
|
Compose file path: zammad_dev/compose.yaml
|
||||||
|
Additional env file (optional): zammad_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" zammad_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|||||||
Reference in New Issue
Block a user