Overview

A Ghost CMS-powered website for the Orthodox Christian Fellowship (OCF) Omaha chapter. The site serves as the digital presence for the local OCF community, providing information about events, resources, and fellowship opportunities.

Architecture

  • Domain: ocfomaha.org
  • Infrastructure: Docker Compose on Digital Ocean droplet
  • Reverse Proxy: Traefik with automatic SSL
  • Database: MySQL 8.0
  • Storage: Docker volumes for persistence

Services

Ghost CMS

  • Purpose: Content management and blog for OCF Omaha
  • URL: https://ocfomaha.org
  • Database: MySQL 8.0
  • Features:
    • Fellowship information and updates
    • Event announcements and details
    • Spiritual resources and articles
    • Member testimonials
    • Photo galleries from events
    • Contact information and location details

Technical Stack

Backend Services

  • Ghost: 6.0.10-alpine
  • Database: MySQL 8.0
  • Web Server: Ghost’s built-in Node.js server

Infrastructure

  • Container Orchestration: Docker Compose
  • Reverse Proxy: Traefik
  • SSL: Let’s Encrypt automatic certificates
  • Networking: Isolated Docker networks

Security

  • SSL/TLS: Automatic HTTPS with Let’s Encrypt
  • Network Isolation: Separate networks for database and web traffic
  • Volume Persistence: Encrypted storage volumes
  • Access Control: Traefik-based routing

Deployment Process

Initial Setup

  1. Domain Configuration: DNS A/AAAA records pointing to Digital Ocean droplet
  2. SSL Certificates: Automatic generation via Traefik and Let’s Encrypt
  3. Database Initialization: MySQL container with persistent volume
  4. Service Configuration: Environment variables for database and Ghost settings

Service Dependencies

ghost -> db (MySQL)

Environment Management

  • Ghost: Environment file for database configuration
  • Database: MySQL root password and database name configuration

Content Strategy

Target Audience

  • Orthodox Christian students in Omaha
  • Local OCF chapter members
  • Prospective members and visitors
  • Orthodox community in the greater Omaha area

Content Types

  • Events: Fellowship meetings, study groups, social events
  • Resources: Spiritual reading recommendations, prayer guides
  • Testimonials: Member stories and experiences
  • Updates: Chapter news and announcements
  • Contact: Meeting locations, times, and contact information

Monitoring and Maintenance

Health Checks

  • Ghost: Database connectivity and service health
  • MySQL: Database server health monitoring
  • Traefik: SSL certificate status and routing

Backup Strategy

  • Database Backups: Automated MySQL dumps
  • Volume Backups: Regular snapshots of Ghost content volume
  • Configuration Backups: Version-controlled docker-compose.yml and environment files

Update Process

  • Image Updates: Pinned to specific digests for stability
  • Security Updates: Regular base image updates
  • Content Updates: Ghost admin interface for content management

Performance Optimization

Caching

  • Traefik: Built-in caching for static assets
  • Ghost: Content caching and CDN integration
  • Database: Optimized queries and indexing

Resource Management

  • Memory Limits: Container resource constraints
  • CPU Allocation: Service-specific resource allocation
  • Storage: Efficient volume management and cleanup

Security Considerations

Network Security

  • Isolated Networks: Service-specific Docker networks
  • Firewall Rules: Restricted port access
  • SSL/TLS: End-to-end encryption

Data Protection

  • Encryption: Database and volume encryption
  • Access Control: Service-specific authentication
  • Audit Logging: Comprehensive logging and monitoring

Future Enhancements

  • Event Integration: Calendar integration for events
  • Member Portal: User accounts and member-only content
  • Mobile Optimization: Enhanced mobile experience
  • Social Integration: Social media feeds and sharing
  • Newsletter: Email subscription and newsletter system