OASIS API Docker Deployment
This folder contains all Docker-related files for building and deploying the OASIS API.
π Files
Dockerfile - Main production Dockerfile for building the OASIS API
.dockerignore - Files and directories to exclude from Docker build context
docker-compose.yml - Docker Compose configuration for local development
build.sh - Script to build Docker image locally for testing
deploy.sh - Script to build and push Docker image to AWS ECR
update-ecs.sh - Script to update AWS ECS service with new image
COMPARISON.md - Comparison between previous working image and current setup
BUILD_STATUS.md - Build status and configuration details
π Quick Start
Build Locally
cd /Volumes/Storage\ 3/OASIS_CLEAN
./docker/build.shThis will build the Docker image with tag oasis-api:latest.
Run Locally
Then access:
API: http://localhost:5003
Swagger: http://localhost:5003/swagger
Build and Deploy to AWS ECR
Update ECS Service
π Configuration
Environment Variables
ASPNETCORE_ENVIRONMENT=ProductionASPNETCORE_URLS=http://+:80
Ports
80: HTTP (internal)
443: HTTPS (internal)
5003: HTTP (host mapping)
5004: HTTPS (host mapping)
Health Check
Endpoint:
/swagger/index.htmlInterval: 30s
Timeout: 10s
Retries: 3
Start Period: 60s
π Build Process
Base Stage: Uses .NET 9.0 runtime image
Build Stage: Uses .NET 9.0 SDK to build the application
Publish Stage: Publishes the application
Final Stage: Copies published files and sets up runtime
π Key Features
β .NET 9.0 compatible
β Multi-stage build for optimized image size
β Includes all 30+ OASIS providers
β Health check configured
β Production-ready configuration
π Troubleshooting
Build Context Too Large
If the build context is too large, check .dockerignore to ensure unnecessary directories are excluded.
Missing Dependencies
Ensure NextGenSoftware-Libraries and other dependencies are available in the build context.
OASIS_DNA.json
The OASIS_DNA.json file should be in the WebAPI project directory. If not present, configuration can be provided via environment variables.
π Related Documentation
BUILD_STATUS.md- Build status and updatesCOMPARISON.md- Comparison with previous working imageSUMMARY.md- Summary of Docker setup
Last updated