From 336dcdfe8451df9015683d34ab49726b1a239cf8 Mon Sep 17 00:00:00 2001 From: Filinto Duran <1373693+filintod@users.noreply.github.com> Date: Wed, 19 Feb 2025 19:22:08 -0600 Subject: [PATCH] add image pull info (#4545) * add info about image pull policy Signed-off-by: Filinto Duran <1373693+filintod@users.noreply.github.com> * Update multi-app-overview.md Add note Signed-off-by: Mark Fussell * Update multi-app-template.md Added example Signed-off-by: Mark Fussell --------- Signed-off-by: Filinto Duran <1373693+filintod@users.noreply.github.com> Signed-off-by: Mark Fussell Co-authored-by: Mark Fussell --- .../multi-app-dapr-run/multi-app-overview.md | 4 +- .../multi-app-dapr-run/multi-app-template.md | 67 ++++++++++--------- 2 files changed, 37 insertions(+), 34 deletions(-) diff --git a/daprdocs/content/en/developing-applications/local-development/multi-app-dapr-run/multi-app-overview.md b/daprdocs/content/en/developing-applications/local-development/multi-app-dapr-run/multi-app-overview.md index 4e48d8a09e4..1cb8cc0b93d 100644 --- a/daprdocs/content/en/developing-applications/local-development/multi-app-dapr-run/multi-app-overview.md +++ b/daprdocs/content/en/developing-applications/local-development/multi-app-dapr-run/multi-app-overview.md @@ -124,6 +124,7 @@ apps: appDirPath: ./nodeapp/ appPort: 3000 containerImage: ghcr.io/dapr/samples/hello-k8s-node:latest + containerImagePullPolicy: Always createService: true env: APP_PORT: 3000 @@ -134,6 +135,7 @@ apps: > **Note:** > - If the `containerImage` field is not specified, `dapr run -k -f` produces an error. +> - The containerImagePullPolicy indicates that a new container image is always downloaded for this app. > - The `createService` field defines a basic service in Kubernetes (ClusterIP or LoadBalancer) that targets the `--app-port` specified in the template. If `createService` isn't specified, the application is not accessible from outside the cluster. For a more in-depth example and explanation of the template properties, see [Multi-app template]({{< ref multi-app-template.md >}}). @@ -169,4 +171,4 @@ Watch [this video for an overview on Multi-App Run in Kubernetes](https://youtu. - [Learn the Multi-App Run template file structure and its properties]({{< ref multi-app-template.md >}}) - [Try out the self-hosted Multi-App Run template with the Service Invocation quickstart]({{< ref serviceinvocation-quickstart.md >}}) -- [Try out the Kubernetes Multi-App Run template with the `hello-kubernetes` tutorial](https://github.com/dapr/quickstarts/tree/master/tutorials/hello-kubernetes) \ No newline at end of file +- [Try out the Kubernetes Multi-App Run template with the `hello-kubernetes` tutorial](https://github.com/dapr/quickstarts/tree/master/tutorials/hello-kubernetes) diff --git a/daprdocs/content/en/developing-applications/local-development/multi-app-dapr-run/multi-app-template.md b/daprdocs/content/en/developing-applications/local-development/multi-app-dapr-run/multi-app-template.md index 606ae9fbe8c..ba7e3d17753 100644 --- a/daprdocs/content/en/developing-applications/local-development/multi-app-dapr-run/multi-app-template.md +++ b/daprdocs/content/en/developing-applications/local-development/multi-app-dapr-run/multi-app-template.md @@ -203,6 +203,7 @@ apps: appLogDestination: file # (optional), can be file, console or fileAndConsole. default is fileAndConsole. daprdLogDestination: file # (optional), can be file, console or fileAndConsole. default is file. containerImage: ghcr.io/dapr/samples/hello-k8s-node:latest # (optional) URI of the container image to be used when deploying to Kubernetes dev/test environment. + containerImagePullPolicy: IfNotPresent # (optional), the container image is downloaded if one is not present locally, otherwise the local one is used. createService: true # (optional) Create a Kubernetes service for the application when deploying to dev/test environment. - appID: backend # optional appDirPath: .dapr/backend/ # REQUIRED @@ -285,39 +286,39 @@ The properties for the Multi-App Run template align with the `dapr run -k` CLI f {{< table "table table-white table-striped table-bordered" >}} -| Properties | Required | Details | Example | -|--------------------------|:--------:|--------|---------| -| `appDirPath` | Y | Path to the your application code | `./webapp/`, `./backend/` | -| `appID` | N | Application's app ID. If not provided, will be derived from `appDirPath` | `webapp`, `backend` | -| `appChannelAddress` | N | The network address the application listens on. Can be left to the default value by convention. | `127.0.0.1` | `localhost` | -| `appProtocol` | N | The protocol Dapr uses to talk to the application. | `http`, `grpc` | -| `appPort` | N | The port your application is listening on | `8080`, `3000` | -| `daprHTTPPort` | N | Dapr HTTP port | | -| `daprGRPCPort` | N | Dapr GRPC port | | -| `daprInternalGRPCPort` | N | gRPC port for the Dapr Internal API to listen on; used when parsing the value from a local DNS component | | -| `metricsPort` | N | The port that Dapr sends its metrics information to | | -| `unixDomainSocket` | N | Path to a unix domain socket dir mount. If specified, communication with the Dapr sidecar uses unix domain sockets for lower latency and greater throughput when compared to using TCP ports. Not available on Windows. | `/tmp/test-socket` | -| `profilePort` | N | The port for the profile server to listen on | | -| `enableProfiling` | N | Enable profiling via an HTTP endpoint | | -| `apiListenAddresses` | N | Dapr API listen addresses | | -| `logLevel` | N | The log verbosity. | | -| `appMaxConcurrency` | N | The concurrency level of the application; default is unlimited | | -| `placementHostAddress` | N | | | -| `appSSL` | N | Enable https when Dapr invokes the application | | -| `daprHTTPMaxRequestSize` | N | Max size of the request body in MB. | | -| `daprHTTPReadBufferSize` | N | Max size of the HTTP read buffer in KB. This also limits the maximum size of HTTP headers. The default 4 KB | | -| `enableAppHealthCheck` | N | Enable the app health check on the application | `true`, `false` | -| `appHealthCheckPath` | N | Path to the health check file | `/healthz` | -| `appHealthProbeInterval` | N | Interval to probe for the health of the app in seconds - | | -| `appHealthProbeTimeout` | N | Timeout for app health probes in milliseconds | | -| `appHealthThreshold` | N | Number of consecutive failures for the app to be considered unhealthy | | -| `enableApiLogging` | N | Enable the logging of all API calls from application to Dapr | | -| `env` | N | Map to environment variable; environment variables applied per application will overwrite environment variables shared across applications | `DEBUG`, `DAPR_HOST_ADD` | -| `appLogDestination` | N | Log destination for outputting app logs; Its value can be file, console or fileAndConsole. Default is fileAndConsole | `file`, `console`, `fileAndConsole` | -| `daprdLogDestination` | N | Log destination for outputting daprd logs; Its value can be file, console or fileAndConsole. Default is file | `file`, `console`, `fileAndConsole` | -| `containerImage`| N | URI of the container image to be used when deploying to Kubernetes dev/test environment. | `ghcr.io/dapr/samples/hello-k8s-python:latest` -| `createService`| N | Create a Kubernetes service for the application when deploying to dev/test environment. | `true`, `false` | +| Properties | Required | Details | Example | +|----------------------------|:--------:|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------| +| `appDirPath` | Y | Path to the your application code | `./webapp/`, `./backend/` | +| `appID` | N | Application's app ID. If not provided, will be derived from `appDirPath` | `webapp`, `backend` | +| `appChannelAddress` | N | The network address the application listens on. Can be left to the default value by convention. | `127.0.0`, `localhost` | +| `appProtocol` | N | The protocol Dapr uses to talk to the application. | `http`, `grpc` | +| `appPort` | N | The port your application is listening on | `8080`, `3000` | +| `daprHTTPPort` | N | Dapr HTTP port | | +| `daprGRPCPort` | N | Dapr GRPC port | | +| `daprInternalGRPCPort` | N | gRPC port for the Dapr Internal API to listen on; used when parsing the value from a local DNS component | | +| `metricsPort` | N | The port that Dapr sends its metrics information to | | +| `unixDomainSocket` | N | Path to a unix domain socket dir mount. If specified, communication with the Dapr sidecar uses unix domain sockets for lower latency and greater throughput when compared to using TCP ports. Not available on Windows. | `/tmp/test-socket` | +| `profilePort` | N | The port for the profile server to listen on | | +| `enableProfiling` | N | Enable profiling via an HTTP endpoint | | +| `apiListenAddresses` | N | Dapr API listen addresses | | +| `logLevel` | N | The log verbosity. | | +| `appMaxConcurrency` | N | The concurrency level of the application; default is unlimited | | +| `placementHostAddress` | N | | | +| `appSSL` | N | Enable https when Dapr invokes the application | | +| `daprHTTPMaxRequestSize` | N | Max size of the request body in MB. | | +| `daprHTTPReadBufferSize` | N | Max size of the HTTP read buffer in KB. This also limits the maximum size of HTTP headers. The default 4 KB | | +| `enableAppHealthCheck` | N | Enable the app health check on the application | `true`, `false` | +| `appHealthCheckPath` | N | Path to the health check file | `/healthz` | +| `appHealthProbeInterval` | N | Interval to probe for the health of the app in seconds | | +| `appHealthProbeTimeout` | N | Timeout for app health probes in milliseconds | | +| `appHealthThreshold` | N | Number of consecutive failures for the app to be considered unhealthy | | +| `enableApiLogging` | N | Enable the logging of all API calls from application to Dapr | | +| `env` | N | Map to environment variable; environment variables applied per application will overwrite environment variables shared across applications | `DEBUG`, `DAPR_HOST_ADD` | +| `appLogDestination` | N | Log destination for outputting app logs; Its value can be file, console or fileAndConsole. Default is fileAndConsole | `file`, `console`, `fileAndConsole` | +| `daprdLogDestination` | N | Log destination for outputting daprd logs; Its value can be file, console or fileAndConsole. Default is file | `file`, `console`, `fileAndConsole` | +| `containerImage` | N | URI of the container image to be used when deploying to Kubernetes dev/test environment. | `ghcr.io/dapr/samples/hello-k8s-python:latest` | +| `containerImagePullPolicy` | N | The container image pull policy (default to `Always`). | `Always`, `IfNotPresent`, `Never` | +| `createService` | N | Create a Kubernetes service for the application when deploying to dev/test environment. | `true`, `false` | {{< /table >}}