Skip to content

Conversation

@konard
Copy link
Member

@konard konard commented Sep 11, 2025

🐳 Docker Implementation for GQL Server

This PR adds complete Docker support for the Data.Doublets.Gql server, making it easy to deploy and run in containerized environments.

📋 Issue Reference

Fixes #32

✨ Implementation Details

🏗️ Docker Configuration

  • Dockerfile: Multi-stage build using .NET 6 SDK for building and .NET 6 runtime for final image
  • docker-compose.yml: Easy deployment with volume persistence and health checks
  • .dockerignore: Optimized build context excluding unnecessary files

📦 Features

  • Volume Persistence: Database files stored in ./data directory on host machine
  • Port Mapping: Container port 80 mapped to host port 29018 (matching production server)
  • Health Check: Automated health monitoring via playground endpoint
  • Environment Configuration: Proper ASP.NET Core environment settings

🚀 Usage Options

Option 1: Docker Compose (Recommended)

docker-compose up -d

Option 2: Manual Docker Build

docker build -t doublets-gql .
docker run -p 29018:80 -v $(pwd)/data:/app/data doublets-gql

🌐 Access Points

After starting the container, access the server at:

📝 Documentation Updates

  • Updated README.md with Docker deployment instructions
  • Added both Docker and traditional .NET deployment methods
  • Clear step-by-step instructions for different deployment scenarios

🔧 Technical Details

  • Uses .NET 6 runtime for optimal performance
  • Database files automatically stored in persistent volume
  • Proper CORS configuration for web UI access
  • Production-ready configuration with health monitoring

✅ Testing

  • Dockerfile builds successfully with proper multi-stage approach
  • All GraphQL endpoints properly configured and accessible
  • Volume mounting ensures data persistence across container restarts

🤖 Generated with Claude Code

Adding CLAUDE.md with task information for AI processing.
This file will be removed when the task is complete.

Issue: #32
@konard konard self-assigned this Sep 11, 2025
konard and others added 2 commits September 11, 2025 09:27
- Add Dockerfile with multi-stage build using .NET 6 SDK and runtime
- Add docker-compose.yml for easy deployment with volume persistence
- Add .dockerignore to optimize build context
- Update README.md with Docker deployment instructions
- Configure container to use persistent data volume at /app/data
- Set default port mapping to match production server (29018)

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
@konard konard changed the title [WIP] Create a docker version of GQL server Add Docker support for GQL server Sep 11, 2025
@konard konard marked this pull request as ready for review September 11, 2025 06:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Create a docker version of GQL server

2 participants