This project is an attempt to bring order to my diverse software interests. In this project you will find a collection of docker services ranging in interests from AI to Media serving and more. My focus is in creating a simple to use and familiar (to me) set of workflows for developing applications and leveraging state of the art technology to do so.
In the future you can expect to see me introduce more robust tooling to help support development of applications. My aim is not to necessary revent the wheel but instead use common well established technologies to create a fun to use solution to meet my needs.
Primary goal is to create easy to use set of workflows for managing services. The focus will be on deploying AI based services via docker. Bonus if it can be setup to deploy to Windows, Linux and even virtualized enviroments on Proxmox.
- Create a simple Docker based deployment strategy leveraging Portainer
- Follow Techno Tim's AI Stack Tutorial
- [] Expand on instructions of desktop setup
- [] Setup DNSmasq for resolving local dns
- ✅ Setup custom https cert with Let's Encrypt
- ✅ Setup multi-environment Traefik deployment
The project now supports a multi-environment setup with proper domain-based routing:
Environment | Domain | IP Address | Purpose |
---|---|---|---|
Storage Server | s01.pixeloven.com |
192.168.8.200 | Storage and backup services |
Workstation 1 | w01.pixeloven.com |
192.168.8.201 | Development and AI services |
Workstation 2 | w02.pixeloven.com |
192.168.8.202 | Additional services |
Each environment supports individual subdomains with automatic Let's Encrypt certificates. No DNS API configuration required - each service gets its own certificate automatically.
- Heavily influenced by Techno Tim's AI Stack Tutorial.
- Portainer docker compose example setup.
- Traefik reverse proxy for service routing and SSL termination.
- Install Docker.
- (optional) Install Docker-compose.
- Clone this repository
- Configure DNS for your domains to point to the correct IP addresses
Install CachyOS
-
Load ISO onto Ventroy
-
Setup for Gaming - https://wiki.cachyos.org/configuration/gaming/
-
Install 1Password Desktop - https://support.1password.com/install-linux/#arch-linux
- Setup SSH Agent
-
Choose your environment and copy the appropriate configuration:
cd services/traefik cp .env.s01.example .env.s01 # For storage server # or cp .env.w01.example .env.w01 # For workstation 1 # or cp .env.w02.example .env.w02 # For workstation 2
-
Customize the environment file with your domain and email:
HOSTNAME=s01.pixeloven.com [email protected]
-
Deploy using Docker Compose:
docker-compose up -d
-
Access your services:
- Traefik Dashboard:
https://traefik.yourdomain.com
- Test Service:
https://whoami.yourdomain.com
- Traefik Dashboard:
Permission issues when running docker commands
sudo usermod -aG docker $USER
sudo systemctl start docker
docker login
Conflict with existing containers try removing all containers
docker rm -v -f $(docker ps -qa)
and to kill all swarm services
docker service rm $(docker service ls -q)