null
Find a file
2025-12-17 23:45:13 +03:30
beszel Add initial setup for personal server Docker containers 2025-11-03 23:39:58 +03:30
ghost-blog Add initial setup for personal server Docker containers 2025-11-03 23:39:58 +03:30
navidrome Add initial setup for personal server Docker containers 2025-11-03 23:39:58 +03:30
nginx Add initial setup for personal server Docker containers 2025-11-03 23:39:58 +03:30
portainer Add initial setup for personal server Docker containers 2025-11-03 23:39:58 +03:30
.zshrc add .zshrc 2025-12-17 23:45:13 +03:30
README.md Add initial setup for personal server Docker containers 2025-11-03 23:39:58 +03:30
start-all.sh Add initial setup for personal server Docker containers 2025-11-03 23:39:58 +03:30

Personal Server Docker Containers

Self-hosted services using Docker Compose.

Services

Service Port Description
Portainer 9000 Docker management UI
Nginx Proxy Manager 81 Reverse proxy with SSL
Ghost Blog 2368 Modern blogging platform
Navidrome 4533 Music server
Beszel 8090 Self-hosted service

Quick Start

# Start all services
./start-all.sh

# Or start individually
cd <service-name> && docker-compose up -d

Configuration

Before starting, configure:

  • Ghost: Set database passwords in ghost-blog/docker-compose.yml
  • Nginx Proxy Manager: Access at http://localhost:81 (default: admin@example.com / changeme)

Data

All data persists in subdirectories:

  • portainer_data/, beszel_data/, navidrome-data/ - Service data
  • ghost-blog/content/, ghost-blog/mysql/ - Ghost content & database
  • nginx/config/, nginx/letsencrypt/ - NPM config & SSL certs

Maintenance

# View logs
docker-compose logs -f

# Stop all
docker-compose down

# Update
docker-compose pull && docker-compose up -d