diff --git a/README.md b/README.md
index afb1148..21a68da 100644
--- a/README.md
+++ b/README.md
@@ -55,6 +55,8 @@ Multiple --env-file flags are supported and applied in order.
These are projects that are not supported in these cookbooks and the alternative that is:
+- Dockge - I like dockhand better
+- Portainer - I like dockhand better
- UptimeKuma - Gatus is used over uptimekuma.
- upscayl - Invokeai is used over upscayl.
diff --git a/_assets/heading.svg b/_assets/heading.svg
deleted file mode 100644
index 25b65c4..0000000
--- a/_assets/heading.svg
+++ /dev/null
@@ -1,52 +0,0 @@
-
-
diff --git a/cookbook.env b/cookbook.env
deleted file mode 100644
index 0211301..0000000
--- a/cookbook.env
+++ /dev/null
@@ -1,15 +0,0 @@
-# Cookbook environment overrides
-# Generated/Updated: 2025-10-24 14:30:00
-# Universal defaults (applies to all cookbooks)
-
-# Volumes base path (all mounts under here, e.g., ${VOL_PATH}/project_data)
-VOL_PATH=/var/lib/docker/volumes
-
-# Timezone for all containers
-TZ=America/Vancouver
-
-# Project name for unique container/network names (default: myProject; override to basename of dir)
-COMPOSE_PROJECT_NAME=myProject
-
-# Instance identifier (for multi-run prefixes, e.g., DB_PASSWORD_${INSTANCE_NAME})
-INSTANCE_NAME=project-prod
\ No newline at end of file
diff --git a/dockge_dev/README.md b/dockge_dev/README.md
deleted file mode 100644
index 40ac4b8..0000000
--- a/dockge_dev/README.md
+++ /dev/null
@@ -1,16 +0,0 @@
-# Dockge
-
-https://dockge.kuma.pet/
-
-# Stacks Directory
-
-⚠️ READ IT CAREFULLY. If you did it wrong, your data could end up writing into a WRONG PATH.
-
-1. FULL path only. No relative path (MUST)
-2. Left Stacks Path === Right Stacks Path (MUST)
-
-Therefore:
-```bash
-sudo mkdir -p /data/dockge/data /data/dockge/stacks
-```
-
diff --git a/dockge_dev/docker-compose.yml b/dockge_dev/docker-compose.yml
deleted file mode 100644
index 6e5149d..0000000
--- a/dockge_dev/docker-compose.yml
+++ /dev/null
@@ -1,12 +0,0 @@
-services:
- dockge:
- image: louislam/dockge:latest
- restart: unless-stopped
- ports:
- - 5001:5001
- volumes:
- - /var/run/docker.sock:/var/run/docker.sock
- - /data/dockge/data:/app/data
- - /opt/stacks:/opt/stacks
- environment:
- - DOCKGE_STACKS_DIR=/opt/stacks
\ No newline at end of file
diff --git a/dockge_dev/sample.env b/dockge_dev/sample.env
deleted file mode 100644
index 994d2c6..0000000
--- a/dockge_dev/sample.env
+++ /dev/null
@@ -1 +0,0 @@
-# Intentionally Blank
\ No newline at end of file
diff --git a/portainer_notes/README.md b/portainer_notes/README.md
deleted file mode 100644
index 18ed6dc..0000000
--- a/portainer_notes/README.md
+++ /dev/null
@@ -1,69 +0,0 @@
-# Portainer
-
-## Ports
-
-Portainer: 9000
-Portainer Agent: 9001
-
-## Network
-
-Create a private network for portainer: ```sudo podman network create portainer-net```
-
-## env config
-
-You must set an agent secret ```openssl rand -base64 32```
-
-```
-# Portainer
-PORTAINER_IMAGE=portainer/portainer-ce:latest
-PORTAINER_AGENT_IMAGE=portainer/agent:latest
-AGENT_SECRET=01234567890132456789012345678912 #HELP: gen32
-VOL_PATH=/docker/vol/portainer-data #HELP: volpath
-COOKBOOK=/home/user/git/docker-compose-cookbooks #HELP: cookbooks
-```
-
-### Docker Compose Extend
-
-Now using extend you can call the service:
-
-```yaml
-version: '3.4'
-
-networks:
- portainer-net:
- external: true
-
-services:
- portainer-agent:
- extends:
- file: ${COOKBOOK}/portainer/docker-compose.yml
- service: portainer-agent
- env_file:
- - .env
-
- portainer:
- extends:
- file: ${COOKBOOK}/portainer/docker-compose.yml
- service: portainer
- env_file:
- - .env
-```
-
-You will likely want to spit up the agent and GUI in your projects.
-
-## Gotchas
-
-### Podman
-
-Make sure podman-docker is installed.
-```sudo dnf install podman-docker```
-
-Create the necessary directory for Podman
-```bash
-sudo mkdir -p /run/podman
-sudo chmod 755 /run/podman
-# Restart Podman socket service
-sudo systemctl restart podman.socket
-# Check the status of the Podman socket
-sudo systemctl status podman.socket
-```
\ No newline at end of file
diff --git a/portainer_notes/docker-compose.yml b/portainer_notes/docker-compose.yml
deleted file mode 100644
index fdcd0c3..0000000
--- a/portainer_notes/docker-compose.yml
+++ /dev/null
@@ -1,23 +0,0 @@
-services:
- portainer:
- image: ${PORTAINER_IMAGE:-portainer/portainer-ce:latest}
- ports:
- - 9000:9000
- environment:
- - AGENT_SECRET=${AGENT_SECRET}
- volumes:
- - /var/run/docker.sock:/var/run/docker.sock
- - "${VOL_PATH:-./config}/portainer:/data"
- restart: always
-
- portainer-agent:
- image: ${PORTAINER_AGENT_IMAGE:-portainer/agent:latest}
- volumes:
- - /var/run/docker.sock:/var/run/docker.sock
- - /var/lib/docker/volumes:/var/lib/docker/volumes
- environment:
- - AGENT_SECRET=${AGENT_SECRET}
- ports:
- - 9001:9001
- restart: always
-
diff --git a/portainer_notes/sample.env b/portainer_notes/sample.env
deleted file mode 100644
index 28740be..0000000
--- a/portainer_notes/sample.env
+++ /dev/null
@@ -1,6 +0,0 @@
-# Portainer
-PORTAINER_IMAGE=portainer/portainer-ce:latest
-PORTAINER_AGENT_IMAGE=portainer/agent:latest
-AGENT_SECRET=01234567890132456789012345678912 #HELP: gen32
-VOL_PATH=/docker/vol/portainer-data #HELP: volpath
-COOKBOOK=/home/user/git/docker-compose-cookbooks #HELP: cookbooks
\ No newline at end of file
diff --git a/portainer_notes/templates/templates.json b/portainer_notes/templates/templates.json
deleted file mode 100644
index 81a37fa..0000000
--- a/portainer_notes/templates/templates.json
+++ /dev/null
@@ -1,396 +0,0 @@
-[
- {
- "type": 1,
- "title": "Nix Registry",
- "description": "Docker image registry by nick 20",
- "categories": ["docker"],
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/registry.png",
- "image": "registry:latest",
- "ports": [
- "5000/tcp"
- ],
- "volumes": [{ "container": "/var/lib/registry"}]
- },
- {
- "type": 1,
- "title": "Nix MariaDB",
- "description": "Performance beyond MySQL",
- "categories": ["database"],
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/mariadb.png",
- "image": "mariadb:latest",
- "env": [
- {
- "name": "MYSQL_ROOT_PASSWORD",
- "label": "Root password"
- }
- ],
- "ports": [
- "3306/tcp"
- ],
- "volumes": [{"container": "/var/lib/mysql"}]
- },
- {
- "type": 1,
- "title": "Nix PostgreSQL",
- "description": "The most advanced open-source database",
- "categories": ["database"],
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/postgres.png",
- "image": "postgres:latest",
- "env": [
- {
- "name": "POSTGRES_USER",
- "label": "Superuser"
- },
- {
- "name": "POSTGRES_PASSWORD",
- "label": "Superuser password"
- }
- ],
- "ports": [
- "5432/tcp"
- ],
- "volumes": [{"container": "/var/lib/postgresql/data"}]
- },
- {
- "type": 1,
- "title": "Gitlab CE",
- "description": "Nix Open-source end-to-end software development platform",
- "note": "Default username is root. Check the Gitlab documentation to get started.",
- "categories": ["development", "project-management"],
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/gitlab_ce.png",
- "image": "gitlab/gitlab-ce:latest",
- "ports": [
- "80/tcp",
- "443/tcp",
- "22/tcp"
- ],
- "volumes": [
- { "container": "/etc/gitlab" },
- { "container": "/var/log/gitlab" },
- { "container": "/var/opt/gitlab" }
- ]
- },
- {
- "type": 1,
- "title": "Redis",
- "description": "Open-source in-memory data structure store",
- "categories": ["database"],
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/redis.png",
- "image": "redis:latest",
- "ports": [
- "6379/tcp"
- ],
- "volumes": [{"container": "/data"}]
- },
- {
- "type": 1,
- "title": "RabbitMQ",
- "description": "Highly reliable enterprise messaging system",
- "categories": ["messaging"],
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/rabbitmq.png",
- "image": "rabbitmq:latest",
- "ports": [
- "5671/tcp",
- "5672/tcp"
- ],
- "volumes": [{"container": "/var/lib/rabbitmq"}]
- },
- {
- "type": 1,
- "title": "Ghost",
- "description": "Free and open-source blogging platform",
- "categories": ["blog"],
- "note": "Access the blog management interface under /ghost/.",
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/ghost.png",
- "image": "ghost:latest",
- "ports": [
- "2368/tcp"
- ],
- "volumes": [{"container": "/var/lib/ghost/content"}]
- },
- {
- "type": 1,
- "title": "Joomla",
- "description": "Another free and open-source CMS",
- "categories": ["CMS"],
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/joomla.png",
- "image": "joomla:latest",
- "env": [
- {
- "name": "JOOMLA_DB_HOST",
- "label": "MySQL database host",
- "type": "container"
- },
- {
- "name": "JOOMLA_DB_PASSWORD",
- "label": "Database password"
- }
- ],
- "ports": [
- "80/tcp"
- ],
- "volumes": [{"container": "/var/www/html"}]
- },
- {
- "type": 1,
- "title": "Wowza",
- "description": "Streaming media server",
- "categories": ["streaming"],
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/wowza.png",
- "image": "sameersbn/wowza:4.1.2-8",
- "env": [
- {
- "name": "WOWZA_ACCEPT_LICENSE",
- "label": "Agree to Wowza EULA",
- "set": "yes"
- },
- {
- "name": "WOWZA_KEY",
- "label": "License key"
- }
- ],
- "ports": [
- "1935/tcp",
- "8086/tcp",
- "8087/tcp",
- "8088/tcp"
- ],
- "volumes": [{"container": "/var/lib/wowza"}]
- },
- {
- "type": 1,
- "title": "Redmine",
- "description": "Open-source project management tool",
- "categories": ["project-management"],
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/redmine.png",
- "image": "redmine:latest",
- "ports": [
- "3000/tcp"
- ],
- "volumes": [{"container": "/usr/src/redmine/files"}]
- },
- {
- "type": 1,
- "title": "Odoo",
- "description": "Open-source business apps",
- "categories": ["project-management"],
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/odoo.png",
- "image": "odoo:latest",
- "env": [
- {
- "name": "HOST",
- "label": "PostgreSQL database host",
- "type": "container"
- },
- {
- "name": "USER",
- "label": "Database user"
- },
- {
- "name": "PASSWORD",
- "label": "Database password"
- }
- ],
- "ports": [
- "8069/tcp"
- ],
- "volumes": [{"container": "/var/lib/odoo"}, {"container": "/mnt/extra-addons"}]
- },
- {
- "type": 1,
- "title": "Urbackup",
- "description": "Open-source network backup",
- "categories": ["backup"],
- "platform": "linux",
- "note": "This application web interface is exposed on the port 55414 inside the container.",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/urbackup.png",
- "image": "cfstras/urbackup",
- "ports": [
- "55413/tcp", "55414/tcp", "55415/tcp", "35622/tcp"
- ],
- "volumes": [{"container": "/var/urbackup"}]
- },
- {
- "type": 1,
- "title": "File browser",
- "description": "A web file manager",
- "note": "Default credentials: admin/admin",
- "categories": ["filesystem", "storage"],
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/filebrowser.png",
- "image": "filebrowser/filebrowser:latest",
- "ports": [
- "80/tcp"
- ],
- "volumes": [{"container": "/data"}, {"container": "/srv"}],
- "command": "--port 80 --database /data/database.db --scope /srv"
- },
- {
- "type": 2,
- "title": "Portainer Agent",
- "description": "Manage all the resources in your Swarm cluster",
- "note": "The agent will be deployed globally inside your cluster and available on port 9001.",
- "categories": ["portainer"],
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/portainer.png",
- "repository": {
- "url": "https://github.com/portainer/templates",
- "stackfile": "stacks/portainer-agent/docker-stack.yml"
- }
- },
- {
- "type": 2,
- "title": "OpenFaaS",
- "name": "func",
- "description": "Serverless functions made simple",
- "note": "Deploys the API gateway and sample functions. You can access the UI on port 8080. Warning: the name of the stack must be 'func'.",
- "categories": ["serverless"],
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/openfaas.png",
- "repository": {
- "url": "https://github.com/openfaas/faas",
- "stackfile": "docker-compose.yml"
- }
- },
- {
- "type": 2,
- "title": "IronFunctions",
- "description": "Open-source serverless computing platform",
- "note": "Deploys the IronFunctions API and UI.",
- "categories": ["serverless"],
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/ironfunctions.png",
- "repository": {
- "url": "https://github.com/portainer/templates",
- "stackfile": "stacks/ironfunctions/docker-stack.yml"
- }
- },
- {
- "type": 2,
- "title": "CockroachDB",
- "description": "CockroachDB cluster",
- "note": "Deploys an insecure CockroachDB cluster, please refer to CockroachDB documentation for production deployments.",
- "categories": ["database"],
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/cockroachdb.png",
- "repository": {
- "url": "https://github.com/portainer/templates",
- "stackfile": "stacks/cockroachdb/docker-stack.yml"
- }
- },
- {
- "type": 2,
- "title": "Wordpress",
- "description": "Wordpress setup with a MySQL database",
- "note": "Deploys a Wordpress instance connected to a MySQL database.",
- "categories": ["CMS"],
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/wordpress.png",
- "repository": {
- "url": "https://github.com/portainer/templates",
- "stackfile": "stacks/wordpress/docker-stack.yml"
- },
- "env": [
- {
- "name": "MYSQL_DATABASE_PASSWORD",
- "label": "Database root password",
- "description": "Password used by the MySQL root user."
- }
- ]
- },
- {
- "type": 3,
- "title": "Wordpress",
- "description": "Wordpress setup with a MySQL database",
- "note": "Deploys a Wordpress instance connected to a MySQL database.",
- "categories": ["CMS"],
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/wordpress.png",
- "repository": {
- "url": "https://github.com/portainer/templates",
- "stackfile": "stacks/wordpress/docker-compose.yml"
- },
- "env": [
- {
- "name": "MYSQL_DATABASE_PASSWORD",
- "label": "Database root password",
- "description": "Password used by the MySQL root user."
- }
- ]
- },
- {
- "type": 2,
- "title": "Microsoft OMS Agent",
- "description": "Microsoft Operations Management Suite Linux agent.",
- "categories": ["OPS"],
- "platform": "linux",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/microsoft.png",
- "repository": {
- "url": "https://github.com/portainer/templates",
- "stackfile": "stacks/microsoft-oms/docker-stack.yml"
- },
- "env": [
- {
- "name": "AZURE_WORKSPACE_ID",
- "label": "Workspace ID",
- "description": "Azure Workspace ID"
- },
- {
- "name": "AZURE_PRIMARY_KEY",
- "label": "Primary key",
- "description": "Azure primary key"
- }
- ]
- },
- {
- "title": "Sematext Docker Agent",
- "type": 2,
- "categories": ["Log Management", "Monitoring"],
- "description": "Collect logs, metrics and docker events",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/sematext_agent.png",
- "platform": "linux",
- "repository": {
- "url": "https://github.com/portainer/templates",
- "stackfile": "stacks/sematext-agent-docker/docker-stack.yml"
- },
- "env": [
- {
- "name": "LOGSENE_TOKEN",
- "label": "Logs token"
- },
- {
- "name": "SPM_TOKEN",
- "label": "SPM monitoring token"
- }
- ]
- },
- {
- "title": "Datadog agent",
- "type": 2,
- "categories": ["Monitoring"],
- "description": "Collect events and metrics",
- "logo": "https://portainer-io-assets.sfo2.digitaloceanspaces.com/logos/datadog_agent.png",
- "platform": "linux",
- "repository": {
- "url": "https://github.com/portainer/templates",
- "stackfile": "stacks/datadog-agent/docker-stack.yml"
- },
- "env": [
- {
- "name": "API_KEY",
- "label": "Datadog API key"
- }
- ]
- }
-]