Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här referensen innehåller systematiska mappningar från Docker Compose YAML-syntax till motsvarande Aspire C#API-anrop. Använd dessa tabeller som en snabbreferens när du konverterar befintliga Docker Compose-filer till Aspire programvärdkonfigurationer. Varje avsnitt beskriver en specifik aspekt av containerorkestrering, från grundläggande tjänstdefinitioner till avancerade nätverk och resurshantering.
Tjänstdefinitioner
| Docker Komponera | Aspire | Noteringar |
|---|---|---|
services: |
var builder = DistributedApplication.CreateBuilder(args) |
Rotprogramskapare som används för att lägga till och representera resurser. |
service_name: |
builder.Add*("service_name") |
Tjänstnamn blir resursnamn. |
Relaterade länkar:
Avbildningar och versioner
| Docker Komponera | Aspire | Noteringar |
|---|---|---|
image: nginx:latest |
builder.AddContainer("name", "nginx:latest") |
Referens för direkt bild. |
build: . |
builder.AddDockerfile("name", ".") |
Skapa från Dockerfile. |
build: ./path |
builder.AddDockerfile("name", "./path") |
Skapa från en specifik sökväg. |
build.context: ./app |
builder.AddDockerfile("name", "./app") |
Skapa kontext. |
build.dockerfile: Custom.dockerfile |
builder.Add*("name").WithDockerfile("Custom.dockerfile") |
Anpassat Dockerfile namn. |
Relaterade länkar:
.NET projekt
| Docker Komponera | Aspire | Noteringar |
|---|---|---|
build: ./MyApi (för .NET) |
builder.AddProject<Projects.MyApi>("myapi") |
Referens för direktprojekt .NET . |
Relaterade länkar:
Portmappningar
| Docker Komponera | Aspire | Noteringar |
|---|---|---|
ports: ["8080:80"] |
.WithHttpEndpoint(port: 8080, targetPort: 80) |
HTTP-slutpunktsmappning. Portar är valfria. dynamiska portar används om de utelämnas. |
ports: ["443:443"] |
.WithHttpsEndpoint(port: 443, targetPort: 443) |
HTTPS-slutpunktsmappning. Portar är valfria. dynamiska portar används om de utelämnas. |
expose: ["8080"] |
.WithEndpoint(port: 8080) |
Intern portexponering. Portar är valfria. dynamiska portar används om de utelämnas. |
Relaterade länkar:
Miljövariabler
| Docker Komponera | Aspire | Noteringar |
|---|---|---|
environment: KEY=value |
.WithEnvironment("KEY", "value") |
Variabel för statisk miljö. |
environment: KEY=${HOST_VAR} |
.WithEnvironment(context => context.EnvironmentVariables["KEY"] = hostVar) |
Miljövariabel med motringningskontext. |
env_file: .env |
Stöds inte | Miljöfil (anpassad implementering). |
Relaterade länkar:
Volymer och lagring
| Docker Komponera | Aspire | Noteringar |
|---|---|---|
volumes: ["data:/app/data"] |
.WithVolume("data", "/app/data") |
Namngiven volym. |
volumes: ["./host:/container"] |
.WithBindMount("./host", "/container") |
Bind montering. |
volumes: ["./config:/app:ro"] |
.WithBindMount("./config", "/app", isReadOnly: true) |
Skrivskyddad bindningsmontering. |
Relaterade länkar:
Beroenden och ordning
| Docker Komponera | Aspire | Noteringar |
|---|---|---|
depends_on: [db] |
.WithReference(db) |
Tjänstberoende med anslutning. |
depends_on: db: condition: service_started |
.WaitFor(db) |
Vänta tills tjänsten har startats. |
depends_on: db: condition: service_healthy |
.WaitForCompletion(db) |
Vänta på hälsokontroll. |
Relaterade länkar:
Nätverk
| Docker Komponera | Aspire | Noteringar |
|---|---|---|
networks: [backend] |
Automatiskt | Aspire hanterar nätverk automatiskt. |
| Anpassade nätverk | Behövs inte | Tjänstidentifiering hanterar kommunikation mellan tjänster. |
Relaterade länkar:
Resursbegränsningar
| Docker Komponera | Aspire | Noteringar |
|---|---|---|
deploy.resources.limits.memory: 512m |
Stöds inte | Resursbegränsningar stöds inte i Aspire. |
deploy.resources.limits.cpus: 0.5 |
Stöds inte | Resursbegränsningar stöds inte i Aspire. |
Relaterade länkar:
Hälsokontroller
| Docker Komponera | Aspire | Noteringar |
|---|---|---|
healthcheck.test: ["CMD", "curl", "http://localhost/health"] |
Inbyggt för integreringar. | Aspire integreringar omfattar hälsokontroller. |
healthcheck.interval: 30s |
Kan konfigureras i integrering. | Konfigurationen av hälsokontroll varierar beroende på resurstyp. |
Relaterade länkar:
Starta om principer
| Docker Komponera | Aspire | Noteringar |
|---|---|---|
restart: unless-stopped |
Stöds inte | Omstartsprinciper stöds inte i Aspire. |
restart: always |
Stöds inte | Omstartsprinciper stöds inte i Aspire. |
restart: no |
Förinställning | Ingen omstartsprincip. |
Relaterade länkar:
Loggning / Skogsavverkning
| Docker Komponera | Aspire | Noteringar |
|---|---|---|
logging.driver: json-file |
Inbyggd | Aspire tillhandahåller integrerad loggning. |
logging.options.max-size: 10m |
Konfiguration av instrumentpanel | Hanteras via Aspire instrumentpanelen. |
Relaterade länkar:
Databastjänster
| Docker Komponera | Aspire | Noteringar |
|---|---|---|
image: postgres:15 |
builder.AddPostgres("name") |
PostgreSQL med automatisk konfiguration. |
image: mysql:8 |
builder.AddMySql("name") |
MySQL med automatisk konfiguration. |
image: redis:7 |
builder.AddRedis("name") |
Redis med automatisk konfiguration. |
image: mongo:latest |
builder.AddMongoDB("name") |
MongoDB med automatisk konfiguration. |
Relaterade länkar: