From bcfd553f4b21608f076ef21df4058ac13f743c97 Mon Sep 17 00:00:00 2001 From: Marc Duiker Date: Thu, 4 Jul 2024 13:27:32 +0200 Subject: [PATCH 1/2] Add config to Run PubSub on k8s Signed-off-by: Marc Duiker --- pub_sub/csharp/deploy/appconfig.yaml | 9 ++++ pub_sub/csharp/deploy/checkout.yaml | 27 +++++++++++ pub_sub/csharp/deploy/order-processor.yaml | 48 +++++++++++++++++++ pub_sub/csharp/deploy/pubsub.yaml | 16 +++++++ pub_sub/csharp/sdk/checkout/Dockerfile | 15 ++++++ pub_sub/csharp/sdk/order-processor/Dockerfile | 16 +++++++ 6 files changed, 131 insertions(+) create mode 100644 pub_sub/csharp/deploy/appconfig.yaml create mode 100644 pub_sub/csharp/deploy/checkout.yaml create mode 100644 pub_sub/csharp/deploy/order-processor.yaml create mode 100644 pub_sub/csharp/deploy/pubsub.yaml create mode 100644 pub_sub/csharp/sdk/checkout/Dockerfile create mode 100644 pub_sub/csharp/sdk/order-processor/Dockerfile diff --git a/pub_sub/csharp/deploy/appconfig.yaml b/pub_sub/csharp/deploy/appconfig.yaml new file mode 100644 index 000000000..a06140b73 --- /dev/null +++ b/pub_sub/csharp/deploy/appconfig.yaml @@ -0,0 +1,9 @@ +apiVersion: dapr.io/v1alpha1 +kind: Configuration +metadata: + name: appconfig +spec: + tracing: + samplingRate: "1" + zipkin: + endpointAddress: "http://zipkin.default.svc.cluster.local:9411/api/v2/spans" diff --git a/pub_sub/csharp/deploy/checkout.yaml b/pub_sub/csharp/deploy/checkout.yaml new file mode 100644 index 000000000..7ae97857e --- /dev/null +++ b/pub_sub/csharp/deploy/checkout.yaml @@ -0,0 +1,27 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: checkout-app + labels: + app: checkout +spec: + replicas: 1 + selector: + matchLabels: + app: checkout + template: + metadata: + labels: + app: checkout + annotations: + dapr.io/enabled: "true" + dapr.io/app-id: "checkout" + dapr.io/log-as-json: "true" + dapr.io/config: "appconfig" + dapr.io/log-level: "debug" + dapr.io/enable-api-logging: "true" + spec: + containers: + - name: checkout-csharp + image: docker.io/library/checkout:latest + imagePullPolicy: Never diff --git a/pub_sub/csharp/deploy/order-processor.yaml b/pub_sub/csharp/deploy/order-processor.yaml new file mode 100644 index 000000000..9038f4091 --- /dev/null +++ b/pub_sub/csharp/deploy/order-processor.yaml @@ -0,0 +1,48 @@ +kind: Service +apiVersion: v1 +metadata: + name: order-processor-app + labels: + app: order-processor +spec: + selector: + app: order-processor + ports: + - protocol: TCP + port: 7006 + targetPort: 7006 + type: ClusterIP +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: order-processor-app + labels: + app: order-processor +spec: + replicas: 1 + selector: + matchLabels: + app: order-processor + template: + metadata: + labels: + app: order-processor + annotations: + dapr.io/enabled: "true" + dapr.io/app-id: "order-processor" + dapr.io/app-port: "7006" + dapr.io/log-as-json: "true" + dapr.io/config: "appconfig" + dapr.io/log-level: "debug" + dapr.io/enable-api-logging: "true" + spec: + containers: + - name: order-processor-csharp + image: docker.io/library/order-processor:latest + ports: + - containerPort: 7006 + imagePullPolicy: Never + env: + - name: "ASPNETCORE_HTTP_PORTS" + value: "7006" diff --git a/pub_sub/csharp/deploy/pubsub.yaml b/pub_sub/csharp/deploy/pubsub.yaml new file mode 100644 index 000000000..b64b81ca9 --- /dev/null +++ b/pub_sub/csharp/deploy/pubsub.yaml @@ -0,0 +1,16 @@ +apiVersion: dapr.io/v1alpha1 +kind: Component +metadata: + name: orderpubsub +spec: + type: pubsub.redis + version: v1 + metadata: + - name: redisHost + value: dapr-dev-redis-master:6379 + - name: redisPassword + secretKeyRef: + name: dapr-dev-redis + key: redis-password +auth: + secretStore: kubernetes diff --git a/pub_sub/csharp/sdk/checkout/Dockerfile b/pub_sub/csharp/sdk/checkout/Dockerfile new file mode 100644 index 000000000..baf3f9b1a --- /dev/null +++ b/pub_sub/csharp/sdk/checkout/Dockerfile @@ -0,0 +1,15 @@ +FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build-env +WORKDIR /app + +# Copy everything +COPY ["/.", "./"] +# Restore as distinct layers +RUN dotnet restore +# Build and publish a release +RUN dotnet publish -c Release -o out + +# Build runtime image +FROM mcr.microsoft.com/dotnet/aspnet:8.0 +WORKDIR /app +COPY --from=build-env /app/out . +ENTRYPOINT ["dotnet", "checkout.dll"] \ No newline at end of file diff --git a/pub_sub/csharp/sdk/order-processor/Dockerfile b/pub_sub/csharp/sdk/order-processor/Dockerfile new file mode 100644 index 000000000..eb15e3d20 --- /dev/null +++ b/pub_sub/csharp/sdk/order-processor/Dockerfile @@ -0,0 +1,16 @@ +FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build-env +WORKDIR /app + +# Copy everything +COPY ["/.", "./"] +# Restore as distinct layers +RUN dotnet restore +# Build and publish a release +RUN dotnet publish -c Release -o out + +# Build runtime image +FROM mcr.microsoft.com/dotnet/aspnet:8.0 +WORKDIR /app +COPY --from=build-env /app/out . +ENTRYPOINT ["dotnet", "order-processor.dll"] +EXPOSE 7006 \ No newline at end of file From 165622ce50385bdf34765b3acba4a49516f2eaff Mon Sep 17 00:00:00 2001 From: Marc Duiker Date: Thu, 4 Jul 2024 15:11:12 +0200 Subject: [PATCH 2/2] Remove appconfig, add fqdn for Redis Signed-off-by: Marc Duiker --- pub_sub/csharp/deploy/appconfig.yaml | 9 --------- pub_sub/csharp/deploy/checkout.yaml | 1 - pub_sub/csharp/deploy/order-processor.yaml | 1 - pub_sub/csharp/deploy/pubsub.yaml | 2 +- 4 files changed, 1 insertion(+), 12 deletions(-) delete mode 100644 pub_sub/csharp/deploy/appconfig.yaml diff --git a/pub_sub/csharp/deploy/appconfig.yaml b/pub_sub/csharp/deploy/appconfig.yaml deleted file mode 100644 index a06140b73..000000000 --- a/pub_sub/csharp/deploy/appconfig.yaml +++ /dev/null @@ -1,9 +0,0 @@ -apiVersion: dapr.io/v1alpha1 -kind: Configuration -metadata: - name: appconfig -spec: - tracing: - samplingRate: "1" - zipkin: - endpointAddress: "http://zipkin.default.svc.cluster.local:9411/api/v2/spans" diff --git a/pub_sub/csharp/deploy/checkout.yaml b/pub_sub/csharp/deploy/checkout.yaml index 7ae97857e..3136c232b 100644 --- a/pub_sub/csharp/deploy/checkout.yaml +++ b/pub_sub/csharp/deploy/checkout.yaml @@ -17,7 +17,6 @@ spec: dapr.io/enabled: "true" dapr.io/app-id: "checkout" dapr.io/log-as-json: "true" - dapr.io/config: "appconfig" dapr.io/log-level: "debug" dapr.io/enable-api-logging: "true" spec: diff --git a/pub_sub/csharp/deploy/order-processor.yaml b/pub_sub/csharp/deploy/order-processor.yaml index 9038f4091..529515561 100644 --- a/pub_sub/csharp/deploy/order-processor.yaml +++ b/pub_sub/csharp/deploy/order-processor.yaml @@ -33,7 +33,6 @@ spec: dapr.io/app-id: "order-processor" dapr.io/app-port: "7006" dapr.io/log-as-json: "true" - dapr.io/config: "appconfig" dapr.io/log-level: "debug" dapr.io/enable-api-logging: "true" spec: diff --git a/pub_sub/csharp/deploy/pubsub.yaml b/pub_sub/csharp/deploy/pubsub.yaml index b64b81ca9..22add01ea 100644 --- a/pub_sub/csharp/deploy/pubsub.yaml +++ b/pub_sub/csharp/deploy/pubsub.yaml @@ -7,7 +7,7 @@ spec: version: v1 metadata: - name: redisHost - value: dapr-dev-redis-master:6379 + value: dapr-dev-redis-master.default.svc.cluster.local:6379 - name: redisPassword secretKeyRef: name: dapr-dev-redis