Repair Docker Compose full-stack setup - #49
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Motivation
docker compose upbring up a coherent local stack including backend, frontend, Postgres, Redis and an optional Nginx proxy.Description
Dockerfile.frontendthat builds the React app and serves the static bundle via Nginx anddocker/frontend.conf.docker-compose.ymlto includepostgres,redis, a one-shotmigratejob that runs/app/scripts/migrate.sh,backend,frontend, and an optionalnginxservice under theproxyprofile, and made the backend depend on the migrate job viaservice_completed_successfully..env.exampleto a sync DB URL (postgresql://...) and set internalredis://redis:6379, removed defaultportspublishing for Postgres and Redis, and added published web ports (BACKEND_PORT,FRONTEND_PORT,NGINX_PORT).Dockerfileto setPYTHONUNBUFFERED/PYTHONDONTWRITEBYTECODE, addEXPOSE 8000, and note that Compose runs migrations via themigratejob; added.dockerignore; and replaced the README Docker section with a newDocker Compose Full-Stack Setupthat documents usage and override guidance.Testing
npm run buildin the frontend and the React production build completed successfully.python -m compileall appto verify Python modules compile successfully.docker-compose.ymlwith a small Python script and asserted structure/behaviour (noportsonpostgres/redis, backend depends onmigrate, andDATABASE_URLstarts withpostgresql://), which passed.docker compose configbut it could not run in this environment because Docker is not installed (/bin/bash: line 1: docker: command not found).Codex Task