Browse Source

Merge branch 'pr'

pull/783/head
Atakan Özceviz 7 years ago
parent
commit
a4ed89099b
  1. 13
      samples/MicroserviceDemo/.dockerignore
  2. 13
      samples/MicroserviceDemo/DeployToKubernetes.sh
  3. 18
      samples/MicroserviceDemo/applications/AuthServer.Host/Dockerfile
  4. 18
      samples/MicroserviceDemo/applications/BackendAdminApp.Host/Dockerfile
  5. 18
      samples/MicroserviceDemo/applications/ConsoleClientDemo/Dockerfile
  6. 18
      samples/MicroserviceDemo/applications/PublicWebSite.Host/Dockerfile
  7. 21
      samples/MicroserviceDemo/databases/Dockerfile
  8. 10
      samples/MicroserviceDemo/databases/entrypoint.sh
  9. 17
      samples/MicroserviceDemo/docker-compose.migrations.yml
  10. 143
      samples/MicroserviceDemo/docker-compose.override.yml
  11. 114
      samples/MicroserviceDemo/docker-compose.yml
  12. 18
      samples/MicroserviceDemo/gateways/BackendAdminAppGateway.Host/Dockerfile
  13. 18
      samples/MicroserviceDemo/gateways/InternalGateway.Host/Dockerfile
  14. 18
      samples/MicroserviceDemo/gateways/PublicWebSiteGateway.Host/Dockerfile
  15. 35
      samples/MicroserviceDemo/k8s/auth-server-deployment.yaml
  16. 15
      samples/MicroserviceDemo/k8s/auth-server-service.yaml
  17. 34
      samples/MicroserviceDemo/k8s/backend-admin-app-deployment.yaml
  18. 47
      samples/MicroserviceDemo/k8s/backend-admin-app-gateway-deployment.yaml
  19. 15
      samples/MicroserviceDemo/k8s/backend-admin-app-gateway-service.yaml
  20. 15
      samples/MicroserviceDemo/k8s/backend-admin-app-service.yaml
  21. 39
      samples/MicroserviceDemo/k8s/blogging-service-deployment.yaml
  22. 15
      samples/MicroserviceDemo/k8s/blogging-service-service.yaml
  23. 32
      samples/MicroserviceDemo/k8s/console-client-demo-deployment.yaml
  24. 15
      samples/MicroserviceDemo/k8s/console-client-demo-service.yaml
  25. 13
      samples/MicroserviceDemo/k8s/dbdata-persistentvolumeclaim.yaml
  26. 37
      samples/MicroserviceDemo/k8s/identity-service-deployment.yaml
  27. 15
      samples/MicroserviceDemo/k8s/identity-service-service.yaml
  28. 49
      samples/MicroserviceDemo/k8s/internal-gateway-deployment.yaml
  29. 15
      samples/MicroserviceDemo/k8s/internal-gateway-service.yaml
  30. 21
      samples/MicroserviceDemo/k8s/migrations-deployment.yaml
  31. 12
      samples/MicroserviceDemo/k8s/migrations-job.yaml
  32. 23
      samples/MicroserviceDemo/k8s/mongodb-deployment.yaml
  33. 15
      samples/MicroserviceDemo/k8s/mongodb-service.yaml
  34. 40
      samples/MicroserviceDemo/k8s/product-service-deployment.yaml
  35. 15
      samples/MicroserviceDemo/k8s/product-service-service.yaml
  36. 34
      samples/MicroserviceDemo/k8s/public-website-deployment.yaml
  37. 45
      samples/MicroserviceDemo/k8s/public-website-gateway-deployment.yaml
  38. 15
      samples/MicroserviceDemo/k8s/public-website-gateway-service.yaml
  39. 15
      samples/MicroserviceDemo/k8s/public-website-service.yaml
  40. 24
      samples/MicroserviceDemo/k8s/rabbitmq-deployment.yaml
  41. 18
      samples/MicroserviceDemo/k8s/rabbitmq-service.yaml
  42. 23
      samples/MicroserviceDemo/k8s/redis-deployment.yaml
  43. 15
      samples/MicroserviceDemo/k8s/redis-service.yaml
  44. 36
      samples/MicroserviceDemo/k8s/sqlserver-deployment.yaml
  45. 15
      samples/MicroserviceDemo/k8s/sqlserver-service.yaml
  46. 18
      samples/MicroserviceDemo/microservices/BloggingService.Host/Dockerfile
  47. 18
      samples/MicroserviceDemo/microservices/IdentityService.Host/Dockerfile
  48. 18
      samples/MicroserviceDemo/microservices/ProductService.Host/Dockerfile

13
samples/MicroserviceDemo/.dockerignore

@ -0,0 +1,13 @@
node_modules
npm-debug.log
Dockerfile*
docker-compose*
.dockerignore
.git
.gitignore
.env
*/bin
*/obj
README.md
LICENSE
.vscode

13
samples/MicroserviceDemo/DeployToKubernetes.sh

@ -0,0 +1,13 @@
#!/bin/bash
set -e
export SHELL="/bin/bash"
minikube start
eval $(minikube docker-env)
docker-compose -f docker-compose.yml -f docker-compose.migrations.yml -f docker-compose.override.yml build
cd ./k8s
kubectl create -f $(ls -x | grep .yaml | grep -v deployment | tr " \t\n\r" "," | sed 's/.$//')
kubectl create -f $(ls -x | grep .yaml | grep deployment | tr " \t\n\r" "," | sed 's/.$//')

18
samples/MicroserviceDemo/applications/AuthServer.Host/Dockerfile

@ -0,0 +1,18 @@
FROM microsoft/dotnet:2.2-aspnetcore-runtime-alpine AS base
WORKDIR /app
EXPOSE 80
FROM microsoft/dotnet:2.2-sdk-alpine AS build
WORKDIR /src
COPY . .
WORKDIR "/src/samples/MicroserviceDemo/applications/AuthServer.Host"
RUN dotnet restore -nowarn:msb3202,nu1503
RUN dotnet build --no-restore -c Release -o /app
FROM build AS publish
RUN dotnet publish --no-restore -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "AuthServer.Host.dll"]

18
samples/MicroserviceDemo/applications/BackendAdminApp.Host/Dockerfile

@ -0,0 +1,18 @@
FROM microsoft/dotnet:2.2-aspnetcore-runtime-alpine AS base
WORKDIR /app
EXPOSE 80
FROM microsoft/dotnet:2.2-sdk-alpine AS build
WORKDIR /src
COPY . .
WORKDIR "/src/samples/MicroserviceDemo/applications/BackendAdminApp.Host"
RUN dotnet restore -nowarn:msb3202,nu1503
RUN dotnet build --no-restore -c Release -o /app
FROM build AS publish
RUN dotnet publish --no-restore -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "BackendAdminApp.Host.dll"]

18
samples/MicroserviceDemo/applications/ConsoleClientDemo/Dockerfile

@ -0,0 +1,18 @@
FROM microsoft/dotnet:2.2-aspnetcore-runtime-alpine AS base
WORKDIR /app
EXPOSE 80
FROM microsoft/dotnet:2.2-sdk-alpine AS build
WORKDIR /src
COPY . .
WORKDIR "/src/samples/MicroserviceDemo/applications/ConsoleClientDemo"
RUN dotnet restore -nowarn:msb3202,nu1503
RUN dotnet build --no-restore -c Release -o /app
FROM build AS publish
RUN dotnet publish --no-restore -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "ConsoleClientDemo.dll"]

18
samples/MicroserviceDemo/applications/PublicWebSite.Host/Dockerfile

@ -0,0 +1,18 @@
FROM microsoft/dotnet:2.2-aspnetcore-runtime-alpine AS base
WORKDIR /app
EXPOSE 80
FROM microsoft/dotnet:2.2-sdk-alpine AS build
WORKDIR /src
COPY . .
WORKDIR "/src/samples/MicroserviceDemo/applications/PublicWebSite.Host"
RUN dotnet restore -nowarn:msb3202,nu1503
RUN dotnet build --no-restore -c Release -o /app
FROM build AS publish
RUN dotnet publish --no-restore -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "PublicWebSite.Host.dll"]

21
samples/MicroserviceDemo/databases/Dockerfile

@ -0,0 +1,21 @@
FROM microsoft/dotnet:2.2-sdk-alpine AS build
RUN apk add --no-cache bash
WORKDIR /src
COPY . .
WORKDIR "/src/samples/MicroserviceDemo/microservices/ProductService.Host"
RUN dotnet restore -nowarn:msb3202,nu1503
RUN dotnet build --no-restore -c Release
WORKDIR "/src/samples/MicroserviceDemo/applications/AuthServer.Host"
RUN dotnet restore -nowarn:msb3202,nu1503
RUN dotnet build --no-restore -c Release
FROM build AS final
WORKDIR /src
COPY --from=build /src/samples/MicroserviceDemo/microservices/ProductService.Host ./ProductService.Host
COPY --from=build /src/samples/MicroserviceDemo/applications/AuthServer.Host ./AuthServer.Host
COPY --from=build /src/samples/MicroserviceDemo/databases/entrypoint.sh .
RUN chmod +x ./entrypoint.sh
ENTRYPOINT ["./entrypoint.sh"]

10
samples/MicroserviceDemo/databases/entrypoint.sh

@ -0,0 +1,10 @@
#!/bin/bash
cd /src/ProductService.Host
until dotnet ef database update --no-build; do
>&2 echo "SQL Server is starting up"
sleep 1
done
cd /src/AuthServer.Host && dotnet ef database update --no-build

17
samples/MicroserviceDemo/docker-compose.migrations.yml

@ -0,0 +1,17 @@
version: '3.0'
services:
sqlserver:
environment:
- SA_PASSWORD=yourStrong(!)Password
- ACCEPT_EULA=Y
ports:
- "1433:1433"
migrations:
image: 'microservice-demo/migrations:${TAG:-latest}'
build:
context: ../..
dockerfile: samples/MicroserviceDemo/databases/Dockerfile
depends_on:
- sqlserver

143
samples/MicroserviceDemo/docker-compose.override.yml

@ -0,0 +1,143 @@
version: '3.0'
services:
sqlserver:
environment:
- SA_PASSWORD=yourStrong(!)Password
- ACCEPT_EULA=Y
ports:
- 1433:1433
mongodb:
ports:
- 27017:27017
rabbitmq:
ports:
- 15672:15672
- 5672:5672
redis:
ports:
- 6379:6379
internal-gateway:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=http://0.0.0.0:80
- AuthServer__Authority=http://auth-server:64999
- ConnectionStrings__Default=Server=sqlserver;Database=MsDemo_Identity;Trusted_Connection=True;MultipleActiveResultSets=true;User=sa;Password=yourStrong(!)Password;Integrated Security=false
- Redis__Configuration=redis
- ReRoutes__0__DownstreamHostAndPorts__Host=identity-service
- ReRoutes__0__DownstreamHostAndPorts__Port=80
- ReRoutes__1__DownstreamHostAndPorts__Host=product-service
- ReRoutes__1__DownstreamHostAndPorts__Port=80
- ReRoutes__2__DownstreamHostAndPorts__Host=blogging-service
- ReRoutes__2__DownstreamHostAndPorts__Port=80
- GlobalConfiguration__BaseUrl=http://internal-gateway
ports:
- 65129:80
backend-admin-app-gateway:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=http://0.0.0.0:80
- RemoteServices__Default__BaseUrl=http://backend-admin-app-gateway/
- AuthServer__Authority=http://auth-server:64999
- ConnectionStrings__Default=Server=sqlserver;Database=MsDemo_Identity;Trusted_Connection=True;MultipleActiveResultSets=true;User=sa;Password=yourStrong(!)Password;Integrated Security=false
- Redis__Configuration=redis
- ReRoutes__0__DownstreamHostAndPorts__Host=identity-service
- ReRoutes__0__DownstreamHostAndPorts__Port=80
- ReRoutes__1__DownstreamHostAndPorts__Host=product-service
- ReRoutes__1__DownstreamHostAndPorts__Port=80
- GlobalConfiguration__BaseUrl=http://backend-admin-app-gateway
ports:
- 65115:80
public-website-gateway:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=http://0.0.0.0:80
- AuthServer__Authority=http://auth-server:64999
- ConnectionStrings__Default=Server=sqlserver;Database=MsDemo_Identity;Trusted_Connection=True;MultipleActiveResultSets=true;User=sa;Password=yourStrong(!)Password;Integrated Security=false
- Redis__Configuration=redis
- ReRoutes__0__DownstreamHostAndPorts__Host=product-service
- ReRoutes__0__DownstreamHostAndPorts__Port=80
- ReRoutes__1__DownstreamHostAndPorts__Host=blogging-service
- ReRoutes__1__DownstreamHostAndPorts__Port=80
- GlobalConfiguration__BaseUrl=http://public-website-gateway
ports:
- 64897:80
blogging-service:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=http://0.0.0.0:80
- AuthServer__Authority=http://auth-server:64999
- ConnectionStrings__Default=Server=sqlserver;Database=MsDemo_Identity;Trusted_Connection=True;MultipleActiveResultSets=true;User=sa;Password=yourStrong(!)Password;Integrated Security=false
- ConnectionStrings__Blogging=mongodb://mongodb|MsDemo_Blogging
- Redis__Configuration=redis
- RabbitMQ__Connections__Default__HostName=rabbitmq
ports:
- 62157:80
identity-service:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=http://0.0.0.0:80
- AuthServer__Authority=http://auth-server:64999
- ConnectionStrings__Default=Server=sqlserver;Database=MsDemo_Identity;Trusted_Connection=True;MultipleActiveResultSets=true;User=sa;Password=yourStrong(!)Password;Integrated Security=false
- Redis__Configuration=redis
- RabbitMQ__Connections__Default__HostName=rabbitmq
ports:
- 63568:80
product-service:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=http://0.0.0.0:80
- AuthServer__Authority=http://auth-server:64999
- ConnectionStrings__Default=Server=sqlserver;Database=MsDemo_Identity;Trusted_Connection=True;MultipleActiveResultSets=true;User=sa;Password=yourStrong(!)Password;Integrated Security=false
- ConnectionStrings__ProductManagement=Server=sqlserver;Database=MsDemo_Identity;Trusted_Connection=True;MultipleActiveResultSets=true;User=sa;Password=yourStrong(!)Password;Integrated Security=false
- Redis__Configuration=redis
- RabbitMQ__Connections__Default__HostName=rabbitmq
ports:
- 60244:80
auth-server:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=http://0.0.0.0:64999
- ConnectionStrings__Default=Server=sqlserver;Database=MsDemo_Identity;Trusted_Connection=True;MultipleActiveResultSets=true;User=sa;Password=yourStrong(!)Password;Integrated Security=false
- Redis__Configuration=redis
- RabbitMQ__Connections__Default__HostName=rabbitmq
ports:
- 64999:64999
backend-admin-app:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=http://0.0.0.0:80
- AuthServer__Authority=http://auth-server:64999
- RemoteServices__Default__BaseUrl=http://backend-admin-app-gateway/
- Redis__Configuration=redis
ports:
- 3000:80
console-client-demo:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=http://0.0.0.0:80
- RemoteServices__Default__BaseUrl=http://internal-gateway/
- IdentityClients__Default__Authority=http://auth-server:64999
ports:
- 3001:80
public-website:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=http://0.0.0.0:80
- AuthServer__Authority=http://auth-server:64999
- RemoteServices__Default__BaseUrl=http://public-website-gateway/
- Redis__Configuration=redis
ports:
- 3002:80

114
samples/MicroserviceDemo/docker-compose.yml

@ -0,0 +1,114 @@
version: '3.0'
services:
sqlserver:
image: mcr.microsoft.com/mssql/server
volumes:
- dbdata:/var/opt/mssql
mongodb:
image: mongo
rabbitmq:
image: 'rabbitmq:3-management-alpine'
redis:
image: redis
internal-gateway:
image: 'microservice-demo/internal-gateway:${TAG:-latest}'
build:
context: ../../
dockerfile: samples/MicroserviceDemo/gateways/InternalGateway.Host/Dockerfile
depends_on:
- redis
- sqlserver
- identity-service
- product-service
- blogging-service
backend-admin-app-gateway:
image: 'microservice-demo/backend-admin-app-gateway:${TAG:-latest}'
build:
context: ../../
dockerfile: samples/MicroserviceDemo/gateways/BackendAdminAppGateway.Host/Dockerfile
depends_on:
- redis
- sqlserver
- identity-service
- product-service
public-website-gateway:
image: 'microservice-demo/public-website-gateway:${TAG:-latest}'
build:
context: ../../
dockerfile: samples/MicroserviceDemo/gateways/PublicWebSiteGateway.Host/Dockerfile
depends_on:
- redis
- blogging-service
- product-service
blogging-service:
image: 'microservice-demo/blogging-service:${TAG:-latest}'
build:
context: ../../
dockerfile: samples/MicroserviceDemo/microservices/BloggingService.Host/Dockerfile
depends_on:
- mongodb
- redis
identity-service:
image: 'microservice-demo/identity-service:${TAG:-latest}'
build:
context: ../../
dockerfile: samples/MicroserviceDemo/microservices/IdentityService.Host/Dockerfile
depends_on:
- rabbitmq
- redis
- sqlserver
product-service:
image: 'microservice-demo/product-service:${TAG:-latest}'
build:
context: ../../
dockerfile: samples/MicroserviceDemo/microservices/ProductService.Host/Dockerfile
depends_on:
- sqlserver
- redis
auth-server:
image: 'microservice-demo/auth-server:${TAG:-latest}'
build:
context: ../../
dockerfile: samples/MicroserviceDemo/applications/AuthServer.Host/Dockerfile
depends_on:
- redis
- rabbitmq
- identity-service
backend-admin-app:
image: 'microservice-demo/backend-admin-app:${TAG:-latest}'
build:
context: ../../
dockerfile: samples/MicroserviceDemo/applications/BackendAdminApp.Host/Dockerfile
depends_on:
- backend-admin-app-gateway
console-client-demo:
image: 'microservice-demo/console-client-demo:${TAG:-latest}'
build:
context: ../../
dockerfile: samples/MicroserviceDemo/applications/ConsoleClientDemo/Dockerfile
depends_on:
- internal-gateway
public-website:
image: 'microservice-demo/public-website:${TAG:-latest}'
build:
context: ../../
dockerfile: samples/MicroserviceDemo/applications/PublicWebSite.Host/Dockerfile
depends_on:
- public-website-gateway
volumes:
dbdata:

18
samples/MicroserviceDemo/gateways/BackendAdminAppGateway.Host/Dockerfile

@ -0,0 +1,18 @@
FROM microsoft/dotnet:2.2-aspnetcore-runtime-alpine AS base
WORKDIR /app
EXPOSE 80
FROM microsoft/dotnet:2.2-sdk-alpine AS build
WORKDIR /src
COPY . .
WORKDIR "/src/samples/MicroserviceDemo/gateways/BackendAdminAppGateway.Host"
RUN dotnet restore -nowarn:msb3202,nu1503
RUN dotnet build --no-restore -c Release -o /app
FROM build AS publish
RUN dotnet publish --no-restore -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "BackendAdminAppGateway.Host.dll"]

18
samples/MicroserviceDemo/gateways/InternalGateway.Host/Dockerfile

@ -0,0 +1,18 @@
FROM microsoft/dotnet:2.2-aspnetcore-runtime-alpine AS base
WORKDIR /app
EXPOSE 80
FROM microsoft/dotnet:2.2-sdk-alpine AS build
WORKDIR /src
COPY . .
WORKDIR "/src/samples/MicroserviceDemo/gateways/InternalGateway.Host"
RUN dotnet restore -nowarn:msb3202,nu1503
RUN dotnet build --no-restore -c Release -o /app
FROM build AS publish
RUN dotnet publish --no-restore -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "InternalGateway.Host.dll"]

18
samples/MicroserviceDemo/gateways/PublicWebSiteGateway.Host/Dockerfile

@ -0,0 +1,18 @@
FROM microsoft/dotnet:2.2-aspnetcore-runtime-alpine AS base
WORKDIR /app
EXPOSE 80
FROM microsoft/dotnet:2.2-sdk-alpine AS build
WORKDIR /src
COPY . .
WORKDIR "/src/samples/MicroserviceDemo/gateways/PublicWebSiteGateway.Host"
RUN dotnet restore -nowarn:msb3202,nu1503
RUN dotnet build --no-restore -c Release -o /app
FROM build AS publish
RUN dotnet publish --no-restore -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "PublicWebSiteGateway.Host.dll"]

35
samples/MicroserviceDemo/k8s/auth-server-deployment.yaml

@ -0,0 +1,35 @@
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
io.kompose.service: auth-server
name: auth-server
spec:
replicas: 1
strategy: {}
template:
metadata:
labels:
io.kompose.service: auth-server
spec:
containers:
- env:
- name: ASPNETCORE_ENVIRONMENT
value: Development
- name: ASPNETCORE_URLS
value: http://0.0.0.0:64999
- name: ConnectionStrings__Default
value: Server=sqlserver;Database=MsDemo_Identity;Trusted_Connection=True;MultipleActiveResultSets=true;User=sa;Password=yourStrong(!)Password;Integrated
Security=false
- name: RabbitMQ__Connections__Default__HostName
value: rabbitmq
- name: Redis__Configuration
value: redis
image: microservice-demo/auth-server:latest
name: auth-server
ports:
- containerPort: 64999
resources: {}
imagePullPolicy: Never
restartPolicy: Always
status: {}

15
samples/MicroserviceDemo/k8s/auth-server-service.yaml

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
labels:
io.kompose.service: auth-server
name: auth-server
spec:
ports:
- name: "64999"
port: 64999
targetPort: 64999
selector:
io.kompose.service: auth-server
status:
loadBalancer: {}

34
samples/MicroserviceDemo/k8s/backend-admin-app-deployment.yaml

@ -0,0 +1,34 @@
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
io.kompose.service: backend-admin-app
name: backend-admin-app
spec:
replicas: 1
strategy: {}
template:
metadata:
labels:
io.kompose.service: backend-admin-app
spec:
containers:
- env:
- name: ASPNETCORE_ENVIRONMENT
value: Development
- name: ASPNETCORE_URLS
value: http://0.0.0.0:80
- name: AuthServer__Authority
value: http://auth-server:64999
- name: Redis__Configuration
value: redis
- name: RemoteServices__Default__BaseUrl
value: http://backend-admin-app-gateway/
image: microservice-demo/backend-admin-app:latest
name: backend-admin-app
ports:
- containerPort: 80
resources: {}
imagePullPolicy: Never
restartPolicy: Always
status: {}

47
samples/MicroserviceDemo/k8s/backend-admin-app-gateway-deployment.yaml

@ -0,0 +1,47 @@
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
io.kompose.service: backend-admin-app-gateway
name: backend-admin-app-gateway
spec:
replicas: 1
strategy: {}
template:
metadata:
labels:
io.kompose.service: backend-admin-app-gateway
spec:
containers:
- env:
- name: ASPNETCORE_ENVIRONMENT
value: Development
- name: ASPNETCORE_URLS
value: http://0.0.0.0:80
- name: AuthServer__Authority
value: http://auth-server:64999
- name: ConnectionStrings__Default
value: Server=sqlserver;Database=MsDemo_Identity;Trusted_Connection=True;MultipleActiveResultSets=true;User=sa;Password=yourStrong(!)Password;Integrated
Security=false
- name: GlobalConfiguration__BaseUrl
value: http://backend-admin-app-gateway
- name: ReRoutes__0__DownstreamHostAndPorts__Host
value: identity-service
- name: ReRoutes__0__DownstreamHostAndPorts__Port
value: "80"
- name: ReRoutes__1__DownstreamHostAndPorts__Host
value: product-service
- name: ReRoutes__1__DownstreamHostAndPorts__Port
value: "80"
- name: Redis__Configuration
value: redis
- name: RemoteServices__Default__BaseUrl
value: http://backend-admin-app-gateway/
image: microservice-demo/backend-admin-app-gateway:latest
name: backend-admin-app-gateway
ports:
- containerPort: 80
resources: {}
imagePullPolicy: Never
restartPolicy: Always
status: {}

15
samples/MicroserviceDemo/k8s/backend-admin-app-gateway-service.yaml

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
labels:
io.kompose.service: backend-admin-app-gateway
name: backend-admin-app-gateway
spec:
ports:
- name: "65115"
port: 65115
targetPort: 80
selector:
io.kompose.service: backend-admin-app-gateway
status:
loadBalancer: {}

15
samples/MicroserviceDemo/k8s/backend-admin-app-service.yaml

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
labels:
io.kompose.service: backend-admin-app
name: backend-admin-app
spec:
ports:
- name: "3000"
port: 3000
targetPort: 80
selector:
io.kompose.service: backend-admin-app
status:
loadBalancer: {}

39
samples/MicroserviceDemo/k8s/blogging-service-deployment.yaml

@ -0,0 +1,39 @@
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
io.kompose.service: blogging-service
name: blogging-service
spec:
replicas: 1
strategy: {}
template:
metadata:
labels:
io.kompose.service: blogging-service
spec:
containers:
- env:
- name: ASPNETCORE_ENVIRONMENT
value: Development
- name: ASPNETCORE_URLS
value: http://0.0.0.0:80
- name: AuthServer__Authority
value: http://auth-server:64999
- name: ConnectionStrings__Blogging
value: mongodb://mongodb|MsDemo_Blogging
- name: ConnectionStrings__Default
value: Server=sqlserver;Database=MsDemo_Identity;Trusted_Connection=True;MultipleActiveResultSets=true;User=sa;Password=yourStrong(!)Password;Integrated
Security=false
- name: RabbitMQ__Connections__Default__HostName
value: rabbitmq
- name: Redis__Configuration
value: redis
image: microservice-demo/blogging-service:latest
name: blogging-service
ports:
- containerPort: 80
resources: {}
imagePullPolicy: Never
restartPolicy: Always
status: {}

15
samples/MicroserviceDemo/k8s/blogging-service-service.yaml

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
labels:
io.kompose.service: blogging-service
name: blogging-service
spec:
ports:
- name: "62157"
port: 62157
targetPort: 80
selector:
io.kompose.service: blogging-service
status:
loadBalancer: {}

32
samples/MicroserviceDemo/k8s/console-client-demo-deployment.yaml

@ -0,0 +1,32 @@
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
io.kompose.service: console-client-demo
name: console-client-demo
spec:
replicas: 1
strategy: {}
template:
metadata:
labels:
io.kompose.service: console-client-demo
spec:
containers:
- env:
- name: ASPNETCORE_ENVIRONMENT
value: Development
- name: ASPNETCORE_URLS
value: http://0.0.0.0:80
- name: IdentityClients__Default__Authority
value: http://auth-server:64999
- name: RemoteServices__Default__BaseUrl
value: http://internal-gateway/
image: microservice-demo/console-client-demo:latest
name: console-client-demo
ports:
- containerPort: 80
resources: {}
imagePullPolicy: Never
restartPolicy: Always
status: {}

15
samples/MicroserviceDemo/k8s/console-client-demo-service.yaml

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
labels:
io.kompose.service: console-client-demo
name: console-client-demo
spec:
ports:
- name: "3001"
port: 3001
targetPort: 80
selector:
io.kompose.service: console-client-demo
status:
loadBalancer: {}

13
samples/MicroserviceDemo/k8s/dbdata-persistentvolumeclaim.yaml

@ -0,0 +1,13 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
labels:
io.kompose.service: dbdata
name: dbdata
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 100Mi
status: {}

37
samples/MicroserviceDemo/k8s/identity-service-deployment.yaml

@ -0,0 +1,37 @@
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
io.kompose.service: identity-service
name: identity-service
spec:
replicas: 1
strategy: {}
template:
metadata:
labels:
io.kompose.service: identity-service
spec:
containers:
- env:
- name: ASPNETCORE_ENVIRONMENT
value: Development
- name: ASPNETCORE_URLS
value: http://0.0.0.0:80
- name: AuthServer__Authority
value: http://auth-server:64999
- name: ConnectionStrings__Default
value: Server=sqlserver;Database=MsDemo_Identity;Trusted_Connection=True;MultipleActiveResultSets=true;User=sa;Password=yourStrong(!)Password;Integrated
Security=false
- name: RabbitMQ__Connections__Default__HostName
value: rabbitmq
- name: Redis__Configuration
value: redis
image: microservice-demo/identity-service:latest
name: identity-service
ports:
- containerPort: 80
resources: {}
imagePullPolicy: Never
restartPolicy: Always
status: {}

15
samples/MicroserviceDemo/k8s/identity-service-service.yaml

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
labels:
io.kompose.service: identity-service
name: identity-service
spec:
ports:
- name: "63568"
port: 63568
targetPort: 80
selector:
io.kompose.service: identity-service
status:
loadBalancer: {}

49
samples/MicroserviceDemo/k8s/internal-gateway-deployment.yaml

@ -0,0 +1,49 @@
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
io.kompose.service: internal-gateway
name: internal-gateway
spec:
replicas: 1
strategy: {}
template:
metadata:
labels:
io.kompose.service: internal-gateway
spec:
containers:
- env:
- name: ASPNETCORE_ENVIRONMENT
value: Development
- name: ASPNETCORE_URLS
value: http://0.0.0.0:80
- name: AuthServer__Authority
value: http://auth-server:64999
- name: ConnectionStrings__Default
value: Server=sqlserver;Database=MsDemo_Identity;Trusted_Connection=True;MultipleActiveResultSets=true;User=sa;Password=yourStrong(!)Password;Integrated
Security=false
- name: GlobalConfiguration__BaseUrl
value: http://internal-gateway
- name: ReRoutes__0__DownstreamHostAndPorts__Host
value: identity-service
- name: ReRoutes__0__DownstreamHostAndPorts__Port
value: "80"
- name: ReRoutes__1__DownstreamHostAndPorts__Host
value: product-service
- name: ReRoutes__1__DownstreamHostAndPorts__Port
value: "80"
- name: ReRoutes__2__DownstreamHostAndPorts__Host
value: blogging-service
- name: ReRoutes__2__DownstreamHostAndPorts__Port
value: "80"
- name: Redis__Configuration
value: redis
image: microservice-demo/internal-gateway:latest
name: internal-gateway
ports:
- containerPort: 80
resources: {}
imagePullPolicy: Never
restartPolicy: Always
status: {}

15
samples/MicroserviceDemo/k8s/internal-gateway-service.yaml

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
labels:
io.kompose.service: internal-gateway
name: internal-gateway
spec:
ports:
- name: "65129"
port: 65129
targetPort: 80
selector:
io.kompose.service: internal-gateway
status:
loadBalancer: {}

21
samples/MicroserviceDemo/k8s/migrations-deployment.yaml

@ -0,0 +1,21 @@
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
io.kompose.service: migrations
name: migrations
spec:
replicas: 1
strategy: {}
template:
metadata:
labels:
io.kompose.service: migrations
spec:
containers:
- image: microservice-demo/migrations:latest
name: migrations
resources: {}
imagePullPolicy: Never
restartPolicy: Always
status: {}

12
samples/MicroserviceDemo/k8s/migrations-job.yaml

@ -0,0 +1,12 @@
apiVersion: batch/v1
kind: Job
metadata:
name: migrations
spec:
template:
spec:
containers:
- image: microservice-demo/migrations:latest
name: migrations
imagePullPolicy: Never
restartPolicy: Never

23
samples/MicroserviceDemo/k8s/mongodb-deployment.yaml

@ -0,0 +1,23 @@
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
io.kompose.service: mongodb
name: mongodb
spec:
replicas: 1
strategy: {}
template:
metadata:
labels:
io.kompose.service: mongodb
spec:
containers:
- image: mongo
name: mongodb
ports:
- containerPort: 27017
resources: {}
imagePullPolicy: IfNotPresent
restartPolicy: Always
status: {}

15
samples/MicroserviceDemo/k8s/mongodb-service.yaml

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
labels:
io.kompose.service: mongodb
name: mongodb
spec:
ports:
- name: "27017"
port: 27017
targetPort: 27017
selector:
io.kompose.service: mongodb
status:
loadBalancer: {}

40
samples/MicroserviceDemo/k8s/product-service-deployment.yaml

@ -0,0 +1,40 @@
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
io.kompose.service: product-service
name: product-service
spec:
replicas: 1
strategy: {}
template:
metadata:
labels:
io.kompose.service: product-service
spec:
containers:
- env:
- name: ASPNETCORE_ENVIRONMENT
value: Development
- name: ASPNETCORE_URLS
value: http://0.0.0.0:80
- name: AuthServer__Authority
value: http://auth-server:64999
- name: ConnectionStrings__Default
value: Server=sqlserver;Database=MsDemo_Identity;Trusted_Connection=True;MultipleActiveResultSets=true;User=sa;Password=yourStrong(!)Password;Integrated
Security=false
- name: ConnectionStrings__ProductManagement
value: Server=sqlserver;Database=MsDemo_Identity;Trusted_Connection=True;MultipleActiveResultSets=true;User=sa;Password=yourStrong(!)Password;Integrated
Security=false
- name: RabbitMQ__Connections__Default__HostName
value: rabbitmq
- name: Redis__Configuration
value: redis
image: microservice-demo/product-service:latest
name: product-service
ports:
- containerPort: 80
resources: {}
imagePullPolicy: Never
restartPolicy: Always
status: {}

15
samples/MicroserviceDemo/k8s/product-service-service.yaml

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
labels:
io.kompose.service: product-service
name: product-service
spec:
ports:
- name: "60244"
port: 60244
targetPort: 80
selector:
io.kompose.service: product-service
status:
loadBalancer: {}

34
samples/MicroserviceDemo/k8s/public-website-deployment.yaml

@ -0,0 +1,34 @@
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
io.kompose.service: public-website
name: public-website
spec:
replicas: 1
strategy: {}
template:
metadata:
labels:
io.kompose.service: public-website
spec:
containers:
- env:
- name: ASPNETCORE_ENVIRONMENT
value: Development
- name: ASPNETCORE_URLS
value: http://0.0.0.0:80
- name: AuthServer__Authority
value: http://auth-server:64999
- name: Redis__Configuration
value: redis
- name: RemoteServices__Default__BaseUrl
value: http://public-website-gateway/
image: microservice-demo/public-website:latest
name: public-website
ports:
- containerPort: 80
resources: {}
imagePullPolicy: Never
restartPolicy: Always
status: {}

45
samples/MicroserviceDemo/k8s/public-website-gateway-deployment.yaml

@ -0,0 +1,45 @@
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
io.kompose.service: public-website-gateway
name: public-website-gateway
spec:
replicas: 1
strategy: {}
template:
metadata:
labels:
io.kompose.service: public-website-gateway
spec:
containers:
- env:
- name: ASPNETCORE_ENVIRONMENT
value: Development
- name: ASPNETCORE_URLS
value: http://0.0.0.0:80
- name: AuthServer__Authority
value: http://auth-server:64999
- name: ConnectionStrings__Default
value: Server=sqlserver;Database=MsDemo_Identity;Trusted_Connection=True;MultipleActiveResultSets=true;User=sa;Password=yourStrong(!)Password;Integrated
Security=false
- name: GlobalConfiguration__BaseUrl
value: http://public-website-gateway
- name: ReRoutes__0__DownstreamHostAndPorts__Host
value: product-service
- name: ReRoutes__0__DownstreamHostAndPorts__Port
value: "80"
- name: ReRoutes__1__DownstreamHostAndPorts__Host
value: blogging-service
- name: ReRoutes__1__DownstreamHostAndPorts__Port
value: "80"
- name: Redis__Configuration
value: redis
image: microservice-demo/public-website-gateway:latest
name: public-website-gateway
ports:
- containerPort: 80
resources: {}
imagePullPolicy: Never
restartPolicy: Always
status: {}

15
samples/MicroserviceDemo/k8s/public-website-gateway-service.yaml

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
labels:
io.kompose.service: public-website-gateway
name: public-website-gateway
spec:
ports:
- name: "64897"
port: 64897
targetPort: 80
selector:
io.kompose.service: public-website-gateway
status:
loadBalancer: {}

15
samples/MicroserviceDemo/k8s/public-website-service.yaml

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
labels:
io.kompose.service: public-website
name: public-website
spec:
ports:
- name: "3002"
port: 3002
targetPort: 80
selector:
io.kompose.service: public-website
status:
loadBalancer: {}

24
samples/MicroserviceDemo/k8s/rabbitmq-deployment.yaml

@ -0,0 +1,24 @@
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
io.kompose.service: rabbitmq
name: rabbitmq
spec:
replicas: 1
strategy: {}
template:
metadata:
labels:
io.kompose.service: rabbitmq
spec:
containers:
- image: rabbitmq:3-management-alpine
name: rabbitmq
ports:
- containerPort: 5672
- containerPort: 15672
resources: {}
imagePullPolicy: IfNotPresent
restartPolicy: Always
status: {}

18
samples/MicroserviceDemo/k8s/rabbitmq-service.yaml

@ -0,0 +1,18 @@
apiVersion: v1
kind: Service
metadata:
labels:
io.kompose.service: rabbitmq
name: rabbitmq
spec:
ports:
- name: "5672"
port: 5672
targetPort: 5672
- name: "15672"
port: 15672
targetPort: 15672
selector:
io.kompose.service: rabbitmq
status:
loadBalancer: {}

23
samples/MicroserviceDemo/k8s/redis-deployment.yaml

@ -0,0 +1,23 @@
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
io.kompose.service: redis
name: redis
spec:
replicas: 1
strategy: {}
template:
metadata:
labels:
io.kompose.service: redis
spec:
containers:
- image: redis
name: redis
ports:
- containerPort: 6379
resources: {}
imagePullPolicy: IfNotPresent
restartPolicy: Always
status: {}

15
samples/MicroserviceDemo/k8s/redis-service.yaml

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
labels:
io.kompose.service: redis
name: redis
spec:
ports:
- name: "6379"
port: 6379
targetPort: 6379
selector:
io.kompose.service: redis
status:
loadBalancer: {}

36
samples/MicroserviceDemo/k8s/sqlserver-deployment.yaml

@ -0,0 +1,36 @@
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
io.kompose.service: sqlserver
name: sqlserver
spec:
replicas: 1
strategy:
type: Recreate
template:
metadata:
labels:
io.kompose.service: sqlserver
spec:
containers:
- env:
- name: ACCEPT_EULA
value: "Y"
- name: SA_PASSWORD
value: yourStrong(!)Password
image: mcr.microsoft.com/mssql/server
name: sqlserver
ports:
- containerPort: 1433
resources: {}
imagePullPolicy: IfNotPresent
volumeMounts:
- mountPath: /var/opt/mssql
name: dbdata
restartPolicy: Always
volumes:
- name: dbdata
persistentVolumeClaim:
claimName: dbdata
status: {}

15
samples/MicroserviceDemo/k8s/sqlserver-service.yaml

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
labels:
io.kompose.service: sqlserver
name: sqlserver
spec:
ports:
- name: "1433"
port: 1433
targetPort: 1433
selector:
io.kompose.service: sqlserver
status:
loadBalancer: {}

18
samples/MicroserviceDemo/microservices/BloggingService.Host/Dockerfile

@ -0,0 +1,18 @@
FROM microsoft/dotnet:2.2-aspnetcore-runtime-alpine AS base
WORKDIR /app
EXPOSE 80
FROM microsoft/dotnet:2.2-sdk-alpine AS build
WORKDIR /src
COPY . .
WORKDIR "/src/samples/MicroserviceDemo/microservices/BloggingService.Host"
RUN dotnet restore -nowarn:msb3202,nu1503
RUN dotnet build --no-restore -c Release -o /app
FROM build AS publish
RUN dotnet publish --no-restore -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "BloggingService.Host.dll"]

18
samples/MicroserviceDemo/microservices/IdentityService.Host/Dockerfile

@ -0,0 +1,18 @@
FROM microsoft/dotnet:2.2-aspnetcore-runtime-alpine AS base
WORKDIR /app
EXPOSE 80
FROM microsoft/dotnet:2.2-sdk-alpine AS build
WORKDIR /src
COPY . .
WORKDIR "/src/samples/MicroserviceDemo/microservices/IdentityService.Host"
RUN dotnet restore -nowarn:msb3202,nu1503
RUN dotnet build --no-restore -c Release -o /app
FROM build AS publish
RUN dotnet publish --no-restore -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "IdentityService.Host.dll"]

18
samples/MicroserviceDemo/microservices/ProductService.Host/Dockerfile

@ -0,0 +1,18 @@
FROM microsoft/dotnet:2.2-aspnetcore-runtime-alpine AS base
WORKDIR /app
EXPOSE 80
FROM microsoft/dotnet:2.2-sdk-alpine AS build
WORKDIR /src
COPY . .
WORKDIR "/src/samples/MicroserviceDemo/microservices/ProductService.Host"
RUN dotnet restore -nowarn:msb3202,nu1503
RUN dotnet build --no-restore -c Release -o /app
FROM build AS publish
RUN dotnet publish --no-restore -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "ProductService.Host.dll"]
Loading…
Cancel
Save