Skip to content

Commit 7369b9a

Browse files
committed
2 parents e9a89ae + 9d7622a commit 7369b9a

34 files changed

Lines changed: 300 additions & 142 deletions

File tree

.dockerignore

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
.dockerignore
2+
.env
3+
.git
4+
.gitignore
5+
.vs
6+
.vscode
7+
docker-compose.yml
8+
docker-compose.*.yml
9+
vsts-docs
10+
test
11+
ServiceFabric
12+
readme
13+
k8s
14+
img
15+
docs
16+
deploy
17+
Components
18+
cli-windows
19+
cli-mac
20+
cli-linux
21+
**/bin/
22+
**/obj/
23+
**/node_modules/
24+
**/bower_components/

NuGet.config

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<configuration>
3+
<config>
4+
<add key="repositoryPath" value="packages" />
5+
</config>
36
<packageSources>
47
<add key="AspNetCore" value="https://dotnet.myget.org/F/aspnet-feb2017-patch/api/v3/index.json" />
58
<add key="NuGet" value="https://api.nuget.org/v3/index.json" />

docker-compose.dcproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
<ProjectVersion>2.0</ProjectVersion>
1010
</PropertyGroup>
1111
<ItemGroup>
12+
<None Include=".dockerignore" />
1213
<None Include="docker-compose.ci.build.yml" />
1314
<None Include="docker-compose.override.yml">
1415
<DependentUpon>docker-compose.yml</DependentUpon>

docker-compose.yml

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ services:
55
basket.api:
66
image: eshop/basket.api:${TAG:-latest}
77
build:
8-
context: ./src/Services/Basket/Basket.API
9-
dockerfile: Dockerfile
8+
context: .
9+
dockerfile: ./src/Services/Basket/Basket.API/Dockerfile
1010
depends_on:
1111
- basket.data
1212
- identity.api
@@ -15,34 +15,34 @@ services:
1515
catalog.api:
1616
image: eshop/catalog.api:${TAG:-latest}
1717
build:
18-
context: ./src/Services/Catalog/Catalog.API
19-
dockerfile: Dockerfile
18+
context: .
19+
dockerfile: ./src/Services/Catalog/Catalog.API/Dockerfile
2020
depends_on:
2121
- sql.data
2222
- rabbitmq
2323

2424
identity.api:
2525
image: eshop/identity.api:${TAG:-latest}
2626
build:
27-
context: ./src/Services/Identity/Identity.API
28-
dockerfile: Dockerfile
27+
context: .
28+
dockerfile: ./src/Services/Identity/Identity.API/Dockerfile
2929
depends_on:
3030
- sql.data
3131

3232
ordering.api:
3333
image: eshop/ordering.api:${TAG:-latest}
3434
build:
35-
context: ./src/Services/Ordering/Ordering.API
36-
dockerfile: Dockerfile
35+
context: .
36+
dockerfile: ./src/Services/Ordering/Ordering.API/Dockerfile
3737
depends_on:
3838
- sql.data
3939
- rabbitmq
4040

4141
marketing.api:
4242
image: eshop/marketing.api:${TAG:-latest}
4343
build:
44-
context: ./src/Services/Marketing/Marketing.API
45-
dockerfile: Dockerfile
44+
context: .
45+
dockerfile: ./src/Services/Marketing/Marketing.API/Dockerfile
4646
depends_on:
4747
- sql.data
4848
- nosql.data
@@ -52,8 +52,8 @@ services:
5252
webspa:
5353
image: eshop/webspa:${TAG:-latest}
5454
build:
55-
context: ./src/Web/WebSPA
56-
dockerfile: Dockerfile
55+
context: .
56+
dockerfile: ./src/Web/WebSPA/Dockerfile
5757
depends_on:
5858
- catalog.api
5959
- ordering.api
@@ -64,8 +64,8 @@ services:
6464
webmvc:
6565
image: eshop/webmvc:${TAG:-latest}
6666
build:
67-
context: ./src/Web/WebMVC
68-
dockerfile: Dockerfile
67+
context: .
68+
dockerfile: ./src/Web/WebMVC/Dockerfile
6969
depends_on:
7070
- catalog.api
7171
- ordering.api
@@ -76,22 +76,22 @@ services:
7676
webstatus:
7777
image: eshop/webstatus:${TAG:-latest}
7878
build:
79-
context: ./src/Web/WebStatus
80-
dockerfile: Dockerfile
79+
context: .
80+
dockerfile: ./src/Web/WebStatus/Dockerfile
8181

8282
payment.api:
8383
image: eshop/payment.api:${TAG:-latest}
8484
build:
85-
context: ./src/Services/Payment/Payment.API
86-
dockerfile: Dockerfile
85+
context: .
86+
dockerfile: ./src/Services/Payment/Payment.API/Dockerfile
8787
depends_on:
8888
- rabbitmq
8989

9090
locations.api:
9191
image: eshop/locations.api:${TAG:-latest}
9292
build:
93-
context: ./src/Services/Location/Locations.API
94-
dockerfile: Dockerfile
93+
context: .
94+
dockerfile: ./src/Services/Location/Locations.API/Dockerfile
9595
depends_on:
9696
- nosql.data
9797
- rabbitmq

src/Services/Basket/Basket.API/.dockerignore

Lines changed: 0 additions & 3 deletions
This file was deleted.

src/Services/Basket/Basket.API/Basket.API.csproj

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,6 @@
1010
<Content Update="web.config">
1111
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
1212
</Content>
13-
<Content Include=".dockerignore">
14-
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
15-
</Content>
1613
</ItemGroup>
1714

1815
<ItemGroup>
@@ -33,10 +30,4 @@
3330
<ProjectReference Include="..\..\..\BuildingBlocks\HealthChecks\src\Microsoft.Extensions.HealthChecks\Microsoft.Extensions.HealthChecks.csproj" />
3431
</ItemGroup>
3532

36-
<ItemGroup>
37-
<None Update="Dockerfile">
38-
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
39-
</None>
40-
</ItemGroup>
41-
4233
</Project>
Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,25 @@
1-
FROM microsoft/aspnetcore:2.0
2-
ARG source
1+
FROM microsoft/aspnetcore:2.0 AS base
32
WORKDIR /app
43
EXPOSE 80
5-
COPY ${source:-obj/Docker/publish} .
4+
5+
FROM microsoft/aspnetcore-build:2.0 AS build
6+
WORKDIR /src
7+
COPY eShopOnContainers-ServicesAndWebApps.sln ./
8+
COPY src/Services/Basket/Basket.API/Basket.API.csproj src/Services/Basket/Basket.API/
9+
COPY src/BuildingBlocks/HealthChecks/src/Microsoft.AspNetCore.HealthChecks/Microsoft.AspNetCore.HealthChecks.csproj src/BuildingBlocks/HealthChecks/src/Microsoft.AspNetCore.HealthChecks/
10+
COPY src/BuildingBlocks/HealthChecks/src/Microsoft.Extensions.HealthChecks/Microsoft.Extensions.HealthChecks.csproj src/BuildingBlocks/HealthChecks/src/Microsoft.Extensions.HealthChecks/
11+
COPY src/BuildingBlocks/EventBus/EventBusRabbitMQ/EventBusRabbitMQ.csproj src/BuildingBlocks/EventBus/EventBusRabbitMQ/
12+
COPY src/BuildingBlocks/EventBus/EventBus/EventBus.csproj src/BuildingBlocks/EventBus/EventBus/
13+
COPY src/BuildingBlocks/EventBus/EventBusServiceBus/EventBusServiceBus.csproj src/BuildingBlocks/EventBus/EventBusServiceBus/
14+
RUN dotnet restore
15+
COPY . .
16+
WORKDIR /src/src/Services/Basket/Basket.API
17+
RUN dotnet build -c Release -o /app
18+
19+
FROM build AS publish
20+
RUN dotnet publish -c Release -o /app
21+
22+
FROM base AS final
23+
WORKDIR /app
24+
COPY --from=publish /app .
625
ENTRYPOINT ["dotnet", "Basket.API.dll"]

src/Services/Catalog/Catalog.API/.dockerignore

Lines changed: 0 additions & 3 deletions
This file was deleted.

src/Services/Catalog/Catalog.API/Catalog.API.csproj

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,6 @@
6161
</ItemGroup>
6262

6363
<ItemGroup>
64-
<None Update="Dockerfile">
65-
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
66-
</None>
6764
<None Update="Pics\*">
6865
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
6966
</None>
Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,29 @@
1-
FROM microsoft/aspnetcore:2.0
2-
ARG source
1+
FROM microsoft/aspnetcore:2.0 AS base
32
WORKDIR /app
43
EXPOSE 80
5-
COPY ${source:-obj/Docker/publish} .
4+
5+
FROM microsoft/aspnetcore-build:2.0 AS build
6+
WORKDIR /src
7+
COPY eShopOnContainers-ServicesAndWebApps.sln ./
8+
COPY src/Services/Catalog/Catalog.API/Catalog.API.csproj src/Services/Catalog/Catalog.API/
9+
COPY src/BuildingBlocks/HealthChecks/src/Microsoft.AspNetCore.HealthChecks/Microsoft.AspNetCore.HealthChecks.csproj src/BuildingBlocks/HealthChecks/src/Microsoft.AspNetCore.HealthChecks/
10+
COPY src/BuildingBlocks/HealthChecks/src/Microsoft.Extensions.HealthChecks/Microsoft.Extensions.HealthChecks.csproj src/BuildingBlocks/HealthChecks/src/Microsoft.Extensions.HealthChecks/
11+
COPY src/BuildingBlocks/EventBus/IntegrationEventLogEF/IntegrationEventLogEF.csproj src/BuildingBlocks/EventBus/IntegrationEventLogEF/
12+
COPY src/BuildingBlocks/EventBus/EventBus/EventBus.csproj src/BuildingBlocks/EventBus/EventBus/
13+
COPY src/BuildingBlocks/EventBus/EventBusRabbitMQ/EventBusRabbitMQ.csproj src/BuildingBlocks/EventBus/EventBusRabbitMQ/
14+
COPY src/BuildingBlocks/EventBus/EventBusServiceBus/EventBusServiceBus.csproj src/BuildingBlocks/EventBus/EventBusServiceBus/
15+
COPY src/BuildingBlocks/WebHostCustomization/WebHost.Customization/WebHost.Customization.csproj src/BuildingBlocks/WebHostCustomization/WebHost.Customization/
16+
COPY src/BuildingBlocks/HealthChecks/src/Microsoft.Extensions.HealthChecks.SqlServer/Microsoft.Extensions.HealthChecks.SqlServer.csproj src/BuildingBlocks/HealthChecks/src/Microsoft.Extensions.HealthChecks.SqlServer/
17+
COPY src/BuildingBlocks/HealthChecks/src/Microsoft.Extensions.HealthChecks.AzureStorage/Microsoft.Extensions.HealthChecks.AzureStorage.csproj src/BuildingBlocks/HealthChecks/src/Microsoft.Extensions.HealthChecks.AzureStorage/
18+
RUN dotnet restore
19+
COPY . .
20+
WORKDIR /src/src/Services/Catalog/Catalog.API
21+
RUN dotnet build -c Release -o /app
22+
23+
FROM build AS publish
24+
RUN dotnet publish -c Release -o /app
25+
26+
FROM base AS final
27+
WORKDIR /app
28+
COPY --from=publish /app .
629
ENTRYPOINT ["dotnet", "Catalog.API.dll"]

0 commit comments

Comments
 (0)