mirror of https://github.com/abpframework/abp.git
48 changed files with 1268 additions and 0 deletions
@ -0,0 +1,13 @@ |
|||
node_modules |
|||
npm-debug.log |
|||
Dockerfile* |
|||
docker-compose* |
|||
.dockerignore |
|||
.git |
|||
.gitignore |
|||
.env |
|||
*/bin |
|||
*/obj |
|||
README.md |
|||
LICENSE |
|||
.vscode |
|||
@ -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/.$//') |
|||
@ -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"] |
|||
@ -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"] |
|||
@ -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"] |
|||
@ -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"] |
|||
@ -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"] |
|||
@ -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 |
|||
@ -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 |
|||
@ -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 |
|||
@ -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: |
|||
@ -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"] |
|||
@ -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"] |
|||
@ -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"] |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -0,0 +1,13 @@ |
|||
apiVersion: v1 |
|||
kind: PersistentVolumeClaim |
|||
metadata: |
|||
labels: |
|||
io.kompose.service: dbdata |
|||
name: dbdata |
|||
spec: |
|||
accessModes: |
|||
- ReadWriteOnce |
|||
resources: |
|||
requests: |
|||
storage: 100Mi |
|||
status: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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 |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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: {} |
|||
@ -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"] |
|||
@ -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"] |
|||
@ -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…
Reference in new issue