Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo riferimento fornisce mapping sistematici dalla Docker sintassi YAML compose alle chiamate API C# equivalenti Aspire . Usare queste tabelle come riferimento rapido quando si convertono i file Compose esistenti Docker in Aspire configurazioni host dell'applicazione. Ogni sezione illustra un aspetto specifico dell'orchestrazione dei contenitori, dalle definizioni di base del servizio alla gestione avanzata delle risorse e della rete.
Definizioni dei servizi
| Docker Comporre | Aspire | Note |
|---|---|---|
services: |
var builder = DistributedApplication.CreateBuilder(args) |
Generatore di applicazioni radice usato per aggiungere e rappresentare le risorse. |
service_name: |
builder.Add*("service_name") |
Il nome del servizio diventa il nome della risorsa. |
Collegamenti correlati:
Immagini e compilazioni
| Docker Comporre | Aspire | Note |
|---|---|---|
image: nginx:latest |
builder.AddContainer("name", "nginx:latest") |
Riferimento diretto all'immagine. |
build: . |
builder.AddDockerfile("name", ".") |
Compilare da Dockerfile. |
build: ./path |
builder.AddDockerfile("name", "./path") |
Compilare da un percorso specifico. |
build.context: ./app |
builder.AddDockerfile("name", "./app") |
Contesto di compilazione. |
build.dockerfile: Custom.dockerfile |
builder.Add*("name").WithDockerfile("Custom.dockerfile") |
Nome personalizzato Dockerfile . |
Collegamenti correlati:
.NET progetti
| Docker Comporre | Aspire | Note |
|---|---|---|
build: ./MyApi (per .NET) |
builder.AddProject<Projects.MyApi>("myapi") |
Riferimento diretto .NET al progetto. |
Collegamenti correlati:
Mapping delle porte
| Docker Comporre | Aspire | Note |
|---|---|---|
ports: ["8080:80"] |
.WithHttpEndpoint(port: 8080, targetPort: 80) |
Mapping dell'endpoint HTTP. Le porte sono facoltative; le porte dinamiche vengono usate se omesse. |
ports: ["443:443"] |
.WithHttpsEndpoint(port: 443, targetPort: 443) |
Mapping degli endpoint HTTPS. Le porte sono facoltative; le porte dinamiche vengono usate se omesse. |
expose: ["8080"] |
.WithEndpoint(port: 8080) |
Esposizione interna delle porte. Le porte sono facoltative; le porte dinamiche vengono usate se omesse. |
Collegamenti correlati:
- Docker Informazioni di riferimento sulle porte compose
- WithHttpEndpoint
- WithHttpsEndpoint
- WithEndpoint
Variabili di ambiente
| Docker Comporre | Aspire | Note |
|---|---|---|
environment: KEY=value |
.WithEnvironment("KEY", "value") |
Variabile di ambiente statica. |
environment: KEY=${HOST_VAR} |
.WithEnvironment(context => context.EnvironmentVariables["KEY"] = hostVar) |
Variabile di ambiente con contesto di callback. |
env_file: .env |
Non supportato | File di ambiente (implementazione personalizzata). |
Collegamenti correlati:
Volumi e archiviazione
| Docker Comporre | Aspire | Note |
|---|---|---|
volumes: ["data:/app/data"] |
.WithVolume("data", "/app/data") |
Volume denominato. |
volumes: ["./host:/container"] |
.WithBindMount("./host", "/container") |
Associa montaggio. |
volumes: ["./config:/app:ro"] |
.WithBindMount("./config", "/app", isReadOnly: true) |
Montaggio binding di sola lettura. |
Collegamenti correlati:
Dipendenze e ordinamento
| Docker Comporre | Aspire | Note |
|---|---|---|
depends_on: [db] |
.WithReference(db) |
Dipendenza del servizio con connessione. |
depends_on: db: condition: service_started |
.WaitFor(db) |
Attendere l'avvio del servizio. |
depends_on: db: condition: service_healthy |
.WaitForCompletion(db) |
Attendere il controllo integrità. |
Collegamenti correlati:
Reti
| Docker Comporre | Aspire | Note |
|---|---|---|
networks: [backend] |
Automatico | Aspire gestisce automaticamente la rete. |
| Reti personalizzate | Non necessario | L'individuazione dei servizi gestisce la comunicazione tra servizi. |
Collegamenti correlati:
Limiti delle risorse
| Docker Comporre | Aspire | Note |
|---|---|---|
deploy.resources.limits.memory: 512m |
Non supportato | I limiti delle risorse non sono supportati in Aspire. |
deploy.resources.limits.cpus: 0.5 |
Non supportato | I limiti delle risorse non sono supportati in Aspire. |
Collegamenti correlati:
Controlli di salute
| Docker Comporre | Aspire | Note |
|---|---|---|
healthcheck.test: ["CMD", "curl", "http://localhost/health"] |
Predefinita per le integrazioni. | Aspire le integrazioni includono i controlli di integrità. |
healthcheck.interval: 30s |
Configurabile nell'integrazione. | La configurazione del controllo integrità varia in base al tipo di risorsa. |
Collegamenti correlati:
Criteri di riavvio
| Docker Comporre | Aspire | Note |
|---|---|---|
restart: unless-stopped |
Non supportato | I criteri di riavvio non sono supportati in Aspire. |
restart: always |
Non supportato | I criteri di riavvio non sono supportati in Aspire. |
restart: no |
Impostazione predefinita | Nessun criterio di riavvio. |
Collegamenti correlati:
Registrazione
| Docker Comporre | Aspire | Note |
|---|---|---|
logging.driver: json-file |
Predefinito | Aspire fornisce la registrazione integrata. |
logging.options.max-size: 10m |
Configurazione del dashboard | Gestito tramite Aspire dashboard. |
Collegamenti correlati:
Servizi di database
| Docker Comporre | Aspire | Note |
|---|---|---|
image: postgres:15 |
builder.AddPostgres("name") |
PostgreSQL con configurazione automatica. |
image: mysql:8 |
builder.AddMySql("name") |
MySQL con configurazione automatica. |
image: redis:7 |
builder.AddRedis("name") |
Redis con configurazione automatica. |
image: mongo:latest |
builder.AddMongoDB("name") |
MongoDB con configurazione automatica. |
Collegamenti correlati: