Add Docker support with SQLite for containerized deployment #7
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Adds production-ready Docker configuration to deploy Splitify with SQLite in a containerized environment.
Changes
Docker Infrastructure
Dockerfile- PHP 8.4 FPM (Debian) with required extensions (pdo_sqlite, mbstring, exif, pcntl, bcmath, gd, opcache), Node.js for Vite builds, Nginx, and Supervisordocker-compose.yml- Single-command deployment with volume persistence, health checks, and environment configuration.dockerignore- Optimized build context excluding node_modules, vendor, build artifactsRuntime Configuration
docker/nginx.conf- Main Nginx config with gzip, logging, security headersdocker/default.conf- Laravel site config with PHP-FPM integration and static asset cachingdocker/supervisord.conf- Process manager for PHP-FPM, Nginx, and queue workerdocker/entrypoint.sh- Initialization script handling .env creation, key generation, database setup, migrations, and config cachingDocumentation
DOCKER.md- Complete usage guide, environment variables, troubleshooting, production deploymentREADME.md- Updated with Docker quick start as recommended installation methodQuick Start
docker-compose up -d # Application available at http://localhost:8000The entrypoint automatically handles database initialization, migrations, and Laravel optimization on first run. Data persists via volumes for
database/database.sqliteandstorage/.Warning
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
github.com (HTTP Only)/usr/bin/ssh -o SendEnv=GIT_PROTOCOL [email protected] git-upload-pack 'webmozarts/assert.git'(packet block)/usr/bin/ssh -o SendEnv=GIT_PROTOCOL [email protected] git-upload-pack 'doctrine/inflector.git'(packet block)/usr/bin/ssh -o SendEnv=GIT_PROTOCOL [email protected] git-upload-pack 'doctrine/lexer.git'(packet block)If you need me to access, download, or install something from one of these locations, you can either:
Original prompt
This pull request was created as a result of the following prompt from Copilot chat.
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.