Home - ajgillis04/GillisDockerDepot GitHub Wiki

Docker Home Wiki

Introduction

Welcome to the GillisDockerDepot Wiki! This repository provides a modular, multi-server framework for deploying and managing Docker services across your infrastructure.

Whether deploying on Linux, QNAP, or Windows (WSL 2), this wiki provides environment setup instructions, repository structure details, and service configuration guides.


Navigation


Repository Architecture

GillisDockerDepot uses a modular template model to cleanly organize active services across multiple hosts (server1, server2, etc.).

GillisDockerDepot/
├── appdata/                         # Application data storage
├── compose/                         # Modular service definitions
│   ├── server1/                     # Active services running on Server 1
│   ├── server2/                     # Active services running on Server 2
│   └── templates/                   # Base reference templates (e.g., chrome.yaml, frigate.yaml)
├── scripts/                         # Shared app configs & setup examples (e.g., frigate_config_example.yml)
├── secrets/                         # Sensitive file mounts and credentials
├── shared/                          # Shared mounts across services
├── wiki/                            # Wiki documentation & screenshots
├── .env                             # Centralized port mapping, secrets, and path definitions
└── docker-compose-server1.yaml      # Master stack compose file for Server 1

How to Deploy a New Service:

  1. Locate the target template in compose/templates/ (e.g., compose/templates/chrome.yaml).
  2. Copy the template into your specific active server directory:
    cp compose/templates/chrome.yaml compose/server1/chrome.yaml
    
  3. Adjust environment variables, volume paths, or ports in compose/server1/chrome.yaml and .env as needed.
  4. Launch or update the service on that host:
    docker compose -p mediaserver -f docker-compose-server1.yaml up -d chrome
    

Docker Environment Setup

Linux Setup (Recommended)

  1. Update package index and install Docker:

    sudo apt update
    sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
    
  2. Verify installation and user permissions:

    docker --version
    sudo docker run hello-world
    

QNAP Setup

  1. Install Container Station: Open the QNAP App Center, search for Container Station, and complete installation.
  2. Configure Master Stack: Upload your docker-compose-server1.yaml and .env files to your designated repository directory.
  3. Launch Stack: Run your docker-compose stack via Container Station UI or SSH terminal.

Windows Setup (WSL 2)

  1. Install WSL 2 & Ubuntu: Open PowerShell as Administrator:

    wsl --install
    wsl --set-default-version 2
    wsl --install -d Ubuntu
    

    Docker Setup Windows WSL

  2. Install & Configure Docker Desktop:

    • Download and run the Docker Desktop Installer.
    • Open Settings -> General and enable Use the WSL 2 based engine.
    • Open Settings -> Resources -> WSL Integration and enable integration for Ubuntu. WSL Integration

Back to Top


Service Configuration Guides

Media, Libraries & Automation

Networking, Access & Remote Tools

Infrastructure, AI & Smart Home

Back to Top


Essential Management Commands

Use these standardized project commands from your host terminal:

  • Validate Compose Configuration:

    docker compose -p mediaserver -f docker-compose-server1.yaml config
    
  • Start / Update Specific Service:

    docker compose -p mediaserver -f docker-compose-server1.yaml up -d <service_name>
    
  • Force Recreate Container:

    docker compose -p mediaserver -f docker-compose-server1.yaml up -d --force-recreate <service_name>
    
  • View Live Container Logs:

    docker compose -p mediaserver -f docker-compose-server1.yaml logs -f <service_name>
    
  • Prune Unused Images & Volumes:

    docker system prune -a --volumes
    

Back to Top