services: sqlserver: image: mcr.microsoft.com/mssql/server:2022-latest platform: linux/amd64 container_name: sqlserver env_file: - .env environment: ACCEPT_EULA: "Y" SA_PASSWORD: "${SA_PASSWORD}" volumes: - sqlserverdata:/var/opt/mssql healthcheck: test: [ "CMD", "/opt/mssql-tools/bin/sqlcmd", "-S", "localhost", "-U", "sa", "-P", "${SA_PASSWORD}", "-Q", "SELECT 1" ] interval: 10s timeout: 5s retries: 12 networks: - devnet redis: image: redis:7 container_name: redis env_file: - .env networks: - devnet healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 10s timeout: 5s retries: 5 dotnet: image: mcr.microsoft.com/dotnet/sdk:10.0 container_name: dotnet-sdk tty: true stdin_open: true volumes: - ./:/home/dev/projects - nuget-cache:/home/dev/.nuget/packages - ~/.gitconfig:/home/dev/.gitconfig:ro working_dir: /home/dev/projects environment: DOTNET_CLI_TELEMETRY_OPTOUT: "1" HOME: /home/dev USER: dev DB_CONNECTION_STRING: "Server=sqlserver,1433;User Id=sa;Password=${SA_PASSWORD};Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Database=${DB_NAME};" REDIS_URL: "${REDIS_URL}" user: root networks: - devnet volumes: sqlserverdata: nuget-cache: networks: devnet: driver: bridge