A barebones Docker Compose setup for quickly bootstrapping full-stack web applications. This scaffold provides a complete development environment with a modern tech stack, ready to be customized for your specific project needs.
This scaffold consists of three containerized services:
Clone the repository
git clone <repository-url>
cd <repository-name>
Start the application
#developement build
docker-compose up --build -d
#or for development with --watch
docker-compose --watch up -d
# for developement on remote aws ec2 instance
# environment variables are provided using aws parameter store
docker-compose -f compose.awsdev.yaml up -d
#production build
docker-compose -f compose.prod.yaml up -d
Access the application
http://localhost
(proxied through Nginx)http://localhost/api
(proxied through Nginx)http://localhost
(if exposed)./api
./web
./nginx/nginx.conf
./api
directory./frontend
directory./web/prod/nginx.conf
( Prod ) / ./web/dev/nginx.conf ( Dev )# Rebuild all services
docker-compose build
# Rebuild specific service
docker-compose build api
docker-compose build web
docker-compose build proxy
# All services
docker-compose logs -f
# Specific service
docker-compose logs -f api
docker-compose logs -f web
docker-compose logs -f proxy
This scaffold is designed to be easily customizable:
.
├── api/ # Node.js backend service
├── frontend/ # SvelteKit frontend service
├── web/ # Nginx configuration
│ └── nginx.conf
├── docker-compose.yml # Service orchestration
└── README.md # This file
# Stop services
docker-compose down
# Stop and remove volumes
docker-compose down -v
[Add your preferred license here]
Note: This is a development scaffold. For development and production deployment, additional considerations for security, performance, and monitoring should be implemented.