在 Manus 中运行任何 Skill
一键导入
一键导入
一键在 Manus 中运行任何 Skill
开始使用$pwd:
$ git log --oneline --stat
stars:158
forks:59
updated:2026年1月9日 18:48
SKILL.md
Implement agile development practices and ceremonies for .NET projects
Automate Work Item -> Branch -> PR -> Evidence Pack for AI Coding Factory
Implement Scrum framework and team structures for .NET enterprise projects
Implement CQRS pattern with MediatR for .NET applications
Create domain models following Domain-Driven Design principles
Create GitHub Actions CI/CD pipelines for .NET applications
| name | net-docker |
| description | Create Docker configuration for ASP.NET Core applications |
| license | MIT |
| compatibility | opencode |
| metadata | {"audience":".net-developers","containers":"docker","orchestration":"docker-compose"} |
I create Docker configuration for .NET apps:
Use this skill when:
# Build stage
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
WORKDIR /src
COPY ["src/ProjectName.Api/ProjectName.Api.csproj", "ProjectName.Api/"]
COPY ["src/ProjectName.Application/ProjectName.Application.csproj", "ProjectName.Application/"]
COPY ["src/ProjectName.Domain/ProjectName.Domain.csproj", "ProjectName.Domain/"]
COPY ["src/ProjectName.Infrastructure/ProjectName.Infrastructure.csproj", "ProjectName.Infrastructure/"]
RUN dotnet restore "ProjectName.Api/ProjectName.Api.csproj"
COPY . .
WORKDIR "/src/ProjectName.Api"
RUN dotnet build "ProjectName.Api.csproj" -c Release -o /app/build
# Publish stage
FROM build AS publish
RUN dotnet publish "ProjectName.Api.csproj" -c Release -o /app/publish /p:UseAppHost=false
# Runtime stage
FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS final
WORKDIR /app
EXPOSE 80
EXPOSE 443
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "ProjectName.Api.dll"]
HEALTHCHECK --interval=30s --timeout=3s \
CMD curl -f http://localhost/health || exit 1
version: '3.8'
services:
api:
build:
context: .
dockerfile: Dockerfile
ports:
- "5000:80"
- "5001:443"
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ConnectionStrings__DefaultConnection=Host=db;Database=appdb;Username=app;Password=app
- JwtSettings__Secret=your-secret-key
depends_on:
db:
condition: service_healthy
volumes:
- ./src/ProjectName.Api/appsettings.Development.json:/app/appsettings.Development.json
networks:
- app-network
db:
image: postgres:15-alpine
environment:
- POSTGRES_DB=appdb
- POSTGRES_USER=app
- POSTGRES_PASSWORD=app
ports:
- "5432:5432"
volumes:
- postgres-data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U app"]
interval: 10s
timeout: 5s
retries: 5
networks:
- app-network
redis:
image: redis:7-alpine
ports:
- "6379:6379"
volumes:
- redis-data:/data
networks:
- app-network
volumes:
postgres-data:
redis-data:
networks:
app-network:
driver: bridge
**/bin/
**/obj/
**/out/
**/.vs/
**/TestResults/
**/*.user
**/*.suo
**/*.cache
**/*.log
**/.vscode/
**/*.md
.git/
.gitignore
docker-compose*.yml
Dockerfile*
latest)Create Docker configuration with:
- Multi-stage Dockerfile
- docker-compose for local dev
- PostgreSQL database
- Redis cache
- Health checks
- Volume mounts
I will generate complete Docker configuration.