| **/.classpath | |||||
| **/.dockerignore | |||||
| **/.env | |||||
| **/.git | |||||
| **/.gitignore | |||||
| **/.project | |||||
| **/.settings | |||||
| **/.toolstarget | |||||
| **/.vs | |||||
| **/.vscode | |||||
| **/*.*proj.user | |||||
| **/*.dbmdl | |||||
| **/*.jfm | |||||
| **/azds.yaml | |||||
| **/bin | |||||
| **/charts | |||||
| **/docker-compose* | |||||
| **/Dockerfile* | |||||
| **/node_modules | |||||
| **/npm-debug.log | |||||
| **/obj | |||||
| **/secrets.dev.yaml | |||||
| **/values.dev.yaml | |||||
| LICENSE | |||||
| README.md |
| FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base | |||||
| WORKDIR /app | |||||
| EXPOSE 80 | |||||
| FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build | |||||
| WORKDIR /src | |||||
| COPY ["SpotifyService/SpotifyService.csproj", "SpotifyService/SpotifyService/"] | |||||
| COPY ["IdentityProvider/IdentityProvider.csproj", "IdentityProvider/IdentityProvider/"] | |||||
| COPY ["NemAnBlazor/NemAnBlazor.csproj", "NemAnBlazor/NemAnBlazor/"] | |||||
| COPY ["SpotifyWorker/SpotifyWorker.csproj", "SpotifyWorker/SpotifyWorker/"] | |||||
| COPY *.sln . | |||||
| COPY *.csproj ./ | |||||
| RUN dotnet restore "SpotifyService/SpotifyService.csproj" | |||||
| RUN dotnet restore "IdentityProvider/IdentityProvider.csproj" | |||||
| RUN dotnet restore "NemAnBlazor/NemAnBlazor.csproj" | |||||
| RUN dotnet restore "SpotifyWorker/SpotifyWorker.csproj" | |||||
| COPY . . | |||||
| WORKDIR "/src/SpotifyService/SpotifyService" | |||||
| RUN dotnet build "SpotifyService.csproj" -c Release -o /app/build | |||||
| COPY . . | |||||
| WORKDIR "/src/IdentityProvider/IdentityProvider" | |||||
| RUN dotnet build "IdentityProvider.csproj" -c Release -o /app/build1 | |||||
| COPY . . | |||||
| WORKDIR "/src/NemAnBlazor/NemAnBlazor" | |||||
| RUN dotnet build "NemAnBlazor.csproj" -c Release -o /app/build2 | |||||
| COPY . . | |||||
| WORKDIR "/src/SpotifyWorker/SpotifyWorker" | |||||
| RUN dotnet build "SpotifyWorker.csproj" -c Release -o /app/build3 | |||||
| FROM build AS publish | |||||
| RUN dotnet publish -c Release -o /app/publish "/src/SpotifyService/SpotifyService.csproj" | |||||
| RUN dotnet publish -c Release -o /app/publish1 "/src/IdentityProvider/IdentityProvider.csproj" | |||||
| RUN dotnet publish -c Release -o /app/publish2 "/src/NemAnBlazor/NemAnBlazor.csproj" | |||||
| RUN dotnet publish -c Release -o /app/publish3 "/src/SpotifyWorker/SpotifyWorker.csproj" | |||||
| FROM base AS final | |||||
| WORKDIR /app | |||||
| COPY --from=publish /app/publish . | |||||
| ENTRYPOINT ["dotnet", "SpotifyService.dll"] | |||||
| COPY --from=publish /app/publish1 . | |||||
| ENTRYPOINT ["dotnet", "IdentityProvider.dll"] | |||||
| COPY --from=publish /app/publish2 . | |||||
| ENTRYPOINT ["dotnet", "NemAnBlazor.dll"] | |||||
| COPY --from=publish /app/publish3 . | |||||
| ENTRYPOINT ["dotnet", "SpotifyWorker.dll"] |
| #See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging. | |||||
| FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base | |||||
| WORKDIR /app | |||||
| EXPOSE 80 | |||||
| EXPOSE 443 | |||||
| FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build | |||||
| WORKDIR /src | |||||
| COPY ["IdentityProvider/IdentityProvider.csproj", "IdentityProvider/"] | |||||
| COPY ["GrpcShared/GrpcShared.csproj", "GrpcShared/"] | |||||
| COPY ["NemAnBlazor/NemAnBlazor.csproj", "NemAnBlazor/"] | |||||
| RUN dotnet restore "IdentityProvider/IdentityProvider.csproj" | |||||
| COPY . . | |||||
| WORKDIR "/src/IdentityProvider" | |||||
| RUN dotnet build "IdentityProvider.csproj" -c Release -o /app/build | |||||
| FROM build AS publish | |||||
| RUN dotnet publish "IdentityProvider.csproj" -c Release -o /app/publish /p:UseAppHost=false | |||||
| FROM base AS final | |||||
| WORKDIR /app | |||||
| COPY --from=publish /app/publish . | |||||
| ENTRYPOINT ["dotnet", "IdentityProvider.dll"] |
| <TargetFramework>net6.0</TargetFramework> | <TargetFramework>net6.0</TargetFramework> | ||||
| <Nullable>enable</Nullable> | <Nullable>enable</Nullable> | ||||
| <ImplicitUsings>enable</ImplicitUsings> | <ImplicitUsings>enable</ImplicitUsings> | ||||
| <UserSecretsId>d42a42c9-e639-4515-9976-91c672b2dcc2</UserSecretsId> | |||||
| <DockerDefaultTargetOS>Linux</DockerDefaultTargetOS> | |||||
| <DockerComposeProjectPath>..\docker-compose.dcproj</DockerComposeProjectPath> | |||||
| </PropertyGroup> | </PropertyGroup> | ||||
| <ItemGroup> | <ItemGroup> | ||||
| <PackageReference Include="Grpc.AspNetCore" Version="2.40.0" /> | <PackageReference Include="Grpc.AspNetCore" Version="2.40.0" /> | ||||
| <PackageReference Include="Grpc.AspNetCore.Web" Version="2.47.0" /> | <PackageReference Include="Grpc.AspNetCore.Web" Version="2.47.0" /> | ||||
| <PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" Version="6.0.8" /> | <PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" Version="6.0.8" /> | ||||
| <PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.17.0" /> | |||||
| <PackageReference Include="MongoDB.Driver" Version="2.17.1" /> | <PackageReference Include="MongoDB.Driver" Version="2.17.1" /> | ||||
| <PackageReference Include="Newtonsoft.Json" Version="13.0.1" /> | <PackageReference Include="Newtonsoft.Json" Version="13.0.1" /> | ||||
| <PackageReference Include="protobuf-net.Grpc" Version="1.0.171" /> | <PackageReference Include="protobuf-net.Grpc" Version="1.0.171" /> |
| { | { | ||||
| "iisSettings": { | |||||
| "windowsAuthentication": false, | |||||
| "anonymousAuthentication": true, | |||||
| "iisExpress": { | |||||
| "applicationUrl": "http://localhost:28725", | |||||
| "sslPort": 44342 | |||||
| } | |||||
| }, | |||||
| "profiles": { | "profiles": { | ||||
| "IIS Express": { | "IIS Express": { | ||||
| "commandName": "IISExpress", | "commandName": "IISExpress", | ||||
| "launchBrowser": false, | |||||
| "inspectUri": "{wsProtocol}://{url.hostname}:{url.port}/_framework/debug/ws-proxy?browser={browserInspectUri}", | |||||
| "environmentVariables": { | "environmentVariables": { | ||||
| "ASPNETCORE_ENVIRONMENT": "Development" | "ASPNETCORE_ENVIRONMENT": "Development" | ||||
| } | |||||
| }, | |||||
| "inspectUri": "{wsProtocol}://{url.hostname}:{url.port}/_framework/debug/ws-proxy?browser={browserInspectUri}" | |||||
| }, | }, | ||||
| "SpotifyService": { | "SpotifyService": { | ||||
| "commandName": "Project", | "commandName": "Project", | ||||
| "dotnetRunMessages": "true", | |||||
| "launchBrowser": false, | |||||
| "inspectUri": "{wsProtocol}://{url.hostname}:{url.port}/_framework/debug/ws-proxy?browser={browserInspectUri}", | |||||
| "applicationUrl": "https://localhost:5001;http://localhost:5000", | |||||
| "environmentVariables": { | "environmentVariables": { | ||||
| "ASPNETCORE_ENVIRONMENT": "Development" | "ASPNETCORE_ENVIRONMENT": "Development" | ||||
| } | |||||
| }, | |||||
| "dotnetRunMessages": "true", | |||||
| "inspectUri": "{wsProtocol}://{url.hostname}:{url.port}/_framework/debug/ws-proxy?browser={browserInspectUri}", | |||||
| "applicationUrl": "https://localhost:5001;http://localhost:5000" | |||||
| }, | |||||
| "Docker": { | |||||
| "commandName": "Docker", | |||||
| "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}", | |||||
| "publishAllPorts": true, | |||||
| "useSSL": true | |||||
| } | |||||
| }, | |||||
| "iisSettings": { | |||||
| "windowsAuthentication": false, | |||||
| "anonymousAuthentication": true, | |||||
| "iisExpress": { | |||||
| "applicationUrl": "http://localhost:28725", | |||||
| "sslPort": 44342 | |||||
| } | } | ||||
| } | } | ||||
| } | } |
| EndProject | EndProject | ||||
| Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GrpcShared", "GrpcShared\GrpcShared.csproj", "{C142D6DF-066A-4ADA-86A3-1C736136C1FA}" | Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GrpcShared", "GrpcShared\GrpcShared.csproj", "{C142D6DF-066A-4ADA-86A3-1C736136C1FA}" | ||||
| EndProject | EndProject | ||||
| Project("{E53339B2-1760-4266-BCC7-CA923CBCF16C}") = "docker-compose", "docker-compose.dcproj", "{5DEF4BC2-FFBE-4CA8-80D5-CC87D065C0CD}" | |||||
| EndProject | |||||
| Global | Global | ||||
| GlobalSection(SolutionConfigurationPlatforms) = preSolution | GlobalSection(SolutionConfigurationPlatforms) = preSolution | ||||
| Debug|Any CPU = Debug|Any CPU | Debug|Any CPU = Debug|Any CPU | ||||
| {C142D6DF-066A-4ADA-86A3-1C736136C1FA}.Debug|Any CPU.Build.0 = Debug|Any CPU | {C142D6DF-066A-4ADA-86A3-1C736136C1FA}.Debug|Any CPU.Build.0 = Debug|Any CPU | ||||
| {C142D6DF-066A-4ADA-86A3-1C736136C1FA}.Release|Any CPU.ActiveCfg = Release|Any CPU | {C142D6DF-066A-4ADA-86A3-1C736136C1FA}.Release|Any CPU.ActiveCfg = Release|Any CPU | ||||
| {C142D6DF-066A-4ADA-86A3-1C736136C1FA}.Release|Any CPU.Build.0 = Release|Any CPU | {C142D6DF-066A-4ADA-86A3-1C736136C1FA}.Release|Any CPU.Build.0 = Release|Any CPU | ||||
| {5DEF4BC2-FFBE-4CA8-80D5-CC87D065C0CD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU | |||||
| {5DEF4BC2-FFBE-4CA8-80D5-CC87D065C0CD}.Debug|Any CPU.Build.0 = Debug|Any CPU | |||||
| {5DEF4BC2-FFBE-4CA8-80D5-CC87D065C0CD}.Release|Any CPU.ActiveCfg = Release|Any CPU | |||||
| {5DEF4BC2-FFBE-4CA8-80D5-CC87D065C0CD}.Release|Any CPU.Build.0 = Release|Any CPU | |||||
| EndGlobalSection | EndGlobalSection | ||||
| GlobalSection(SolutionProperties) = preSolution | GlobalSection(SolutionProperties) = preSolution | ||||
| HideSolutionNode = FALSE | HideSolutionNode = FALSE |
| <TargetFramework>net6.0</TargetFramework> | <TargetFramework>net6.0</TargetFramework> | ||||
| <Nullable>enable</Nullable> | <Nullable>enable</Nullable> | ||||
| <ImplicitUsings>enable</ImplicitUsings> | <ImplicitUsings>enable</ImplicitUsings> | ||||
| <DockerComposeProjectPath>..\docker-compose.dcproj</DockerComposeProjectPath> | |||||
| </PropertyGroup> | </PropertyGroup> | ||||
| <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'"> | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'"> |
| #See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging. | |||||
| FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base | |||||
| WORKDIR /app | |||||
| EXPOSE 80 | |||||
| EXPOSE 443 | |||||
| FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build | |||||
| WORKDIR /src | |||||
| COPY ["SpotifyService/SpotifyService.csproj", "SpotifyService/"] | |||||
| COPY ["GrpcShared/GrpcShared.csproj", "GrpcShared/"] | |||||
| COPY ["IdentityProvider/IdentityProvider.csproj", "IdentityProvider/"] | |||||
| COPY ["NemAnBlazor/NemAnBlazor.csproj", "NemAnBlazor/"] | |||||
| RUN dotnet restore "SpotifyService/SpotifyService.csproj" | |||||
| COPY . . | |||||
| WORKDIR "/src/SpotifyService" | |||||
| RUN dotnet build "SpotifyService.csproj" -c Release -o /app/build | |||||
| FROM build AS publish | |||||
| RUN dotnet publish "SpotifyService.csproj" -c Release -o /app/publish /p:UseAppHost=false | |||||
| FROM base AS final | |||||
| WORKDIR /app | |||||
| COPY --from=publish /app/publish . | |||||
| ENTRYPOINT ["dotnet", "SpotifyService.dll"] |
| { | |||||
| "iisSettings": { | |||||
| "windowsAuthentication": false, | |||||
| "anonymousAuthentication": true, | |||||
| "iisExpress": { | |||||
| "applicationUrl": "http://localhost:28725", | |||||
| "sslPort": 44342 | |||||
| } | |||||
| }, | |||||
| { | |||||
| "profiles": { | "profiles": { | ||||
| "IIS Express": { | "IIS Express": { | ||||
| "commandName": "IISExpress", | "commandName": "IISExpress", | ||||
| "launchBrowser": true, | "launchBrowser": true, | ||||
| "inspectUri": "{wsProtocol}://{url.hostname}:{url.port}/_framework/debug/ws-proxy?browser={browserInspectUri}", | |||||
| "environmentVariables": { | "environmentVariables": { | ||||
| "ASPNETCORE_ENVIRONMENT": "Development" | "ASPNETCORE_ENVIRONMENT": "Development" | ||||
| } | |||||
| }, | |||||
| "inspectUri": "{wsProtocol}://{url.hostname}:{url.port}/_framework/debug/ws-proxy?browser={browserInspectUri}" | |||||
| }, | }, | ||||
| "SpotifyService": { | "SpotifyService": { | ||||
| "commandName": "Project", | "commandName": "Project", | ||||
| "dotnetRunMessages": "true", | |||||
| "launchBrowser": true, | "launchBrowser": true, | ||||
| "inspectUri": "{wsProtocol}://{url.hostname}:{url.port}/_framework/debug/ws-proxy?browser={browserInspectUri}", | |||||
| "applicationUrl": "https://localhost:5001;http://localhost:5000", | |||||
| "environmentVariables": { | "environmentVariables": { | ||||
| "ASPNETCORE_ENVIRONMENT": "Development" | "ASPNETCORE_ENVIRONMENT": "Development" | ||||
| } | |||||
| }, | |||||
| "dotnetRunMessages": "true", | |||||
| "inspectUri": "{wsProtocol}://{url.hostname}:{url.port}/_framework/debug/ws-proxy?browser={browserInspectUri}", | |||||
| "applicationUrl": "https://localhost:5001;http://localhost:5000" | |||||
| }, | |||||
| "Docker": { | |||||
| "commandName": "Docker", | |||||
| "launchBrowser": true, | |||||
| "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}", | |||||
| "publishAllPorts": true, | |||||
| "useSSL": true | |||||
| } | |||||
| }, | |||||
| "iisSettings": { | |||||
| "windowsAuthentication": false, | |||||
| "anonymousAuthentication": true, | |||||
| "iisExpress": { | |||||
| "applicationUrl": "http://localhost:28725", | |||||
| "sslPort": 44342 | |||||
| } | } | ||||
| } | } | ||||
| } | |||||
| } |
| <Project Sdk="Microsoft.NET.Sdk.Web"> | |||||
| <Project Sdk="Microsoft.NET.Sdk.Web"> | |||||
| <PropertyGroup> | <PropertyGroup> | ||||
| <TargetFramework>net6.0</TargetFramework> | <TargetFramework>net6.0</TargetFramework> | ||||
| <Nullable>enable</Nullable> | <Nullable>enable</Nullable> | ||||
| <ImplicitUsings>enable</ImplicitUsings> | <ImplicitUsings>enable</ImplicitUsings> | ||||
| <UserSecretsId>2d734739-67f9-4962-a0ef-c43fbc662a6b</UserSecretsId> | |||||
| <DockerDefaultTargetOS>Linux</DockerDefaultTargetOS> | |||||
| <DockerComposeProjectPath>..\docker-compose.dcproj</DockerComposeProjectPath> | |||||
| </PropertyGroup> | </PropertyGroup> | ||||
| <ItemGroup> | <ItemGroup> | ||||
| <PackageReference Include="Grpc.AspNetCore.Web" Version="2.47.0" /> | <PackageReference Include="Grpc.AspNetCore.Web" Version="2.47.0" /> | ||||
| <PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" Version="6.0.8" /> | <PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" Version="6.0.8" /> | ||||
| <PackageReference Include="Microsoft.Extensions.Http.Polly" Version="6.0.8" /> | <PackageReference Include="Microsoft.Extensions.Http.Polly" Version="6.0.8" /> | ||||
| <PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.17.0" /> | |||||
| <PackageReference Include="Newtonsoft.Json" Version="13.0.1" /> | <PackageReference Include="Newtonsoft.Json" Version="13.0.1" /> | ||||
| <PackageReference Include="Polly" Version="7.2.3" /> | <PackageReference Include="Polly" Version="7.2.3" /> | ||||
| <PackageReference Include="protobuf-net.Grpc" Version="1.0.171" /> | <PackageReference Include="protobuf-net.Grpc" Version="1.0.171" /> |
| #See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging. | |||||
| FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base | |||||
| WORKDIR /app | |||||
| FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build | |||||
| WORKDIR /src | |||||
| COPY ["SpotifyWorker/SpotifyWorker.csproj", "SpotifyWorker/"] | |||||
| COPY ["SpotifyService/SpotifyService.csproj", "SpotifyService/"] | |||||
| COPY ["GrpcShared/GrpcShared.csproj", "GrpcShared/"] | |||||
| COPY ["IdentityProvider/IdentityProvider.csproj", "IdentityProvider/"] | |||||
| COPY ["NemAnBlazor/NemAnBlazor.csproj", "NemAnBlazor/"] | |||||
| RUN dotnet restore "SpotifyWorker/SpotifyWorker.csproj" | |||||
| COPY . . | |||||
| WORKDIR "/src/SpotifyWorker" | |||||
| RUN dotnet build "SpotifyWorker.csproj" -c Release -o /app/build | |||||
| FROM build AS publish | |||||
| RUN dotnet publish "SpotifyWorker.csproj" -c Release -o /app/publish /p:UseAppHost=false | |||||
| FROM base AS final | |||||
| WORKDIR /app | |||||
| COPY --from=publish /app/publish . | |||||
| ENTRYPOINT ["dotnet", "SpotifyWorker.dll"] |
| { | |||||
| { | |||||
| "profiles": { | "profiles": { | ||||
| "SpotifyWorker": { | "SpotifyWorker": { | ||||
| "commandName": "Project", | "commandName": "Project", | ||||
| "dotnetRunMessages": true, | |||||
| "environmentVariables": { | "environmentVariables": { | ||||
| "DOTNET_ENVIRONMENT": "Development" | "DOTNET_ENVIRONMENT": "Development" | ||||
| } | |||||
| }, | |||||
| "dotnetRunMessages": true | |||||
| }, | |||||
| "Docker": { | |||||
| "commandName": "Docker" | |||||
| } | } | ||||
| } | } | ||||
| } | |||||
| } |
| <Nullable>enable</Nullable> | <Nullable>enable</Nullable> | ||||
| <ImplicitUsings>enable</ImplicitUsings> | <ImplicitUsings>enable</ImplicitUsings> | ||||
| <UserSecretsId>dotnet-SpotifyWorker-32F09870-7D1D-49C3-A41E-BCD7B23F1454</UserSecretsId> | <UserSecretsId>dotnet-SpotifyWorker-32F09870-7D1D-49C3-A41E-BCD7B23F1454</UserSecretsId> | ||||
| <DockerDefaultTargetOS>Linux</DockerDefaultTargetOS> | |||||
| </PropertyGroup> | </PropertyGroup> | ||||
| <ItemGroup> | <ItemGroup> | ||||
| <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> | <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> | ||||
| </PackageReference> | </PackageReference> | ||||
| <PackageReference Include="Microsoft.Extensions.Hosting" Version="6.0.1" /> | <PackageReference Include="Microsoft.Extensions.Hosting" Version="6.0.1" /> | ||||
| <PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.17.0" /> | |||||
| <PackageReference Include="protobuf-net.Grpc" Version="1.0.171" /> | <PackageReference Include="protobuf-net.Grpc" Version="1.0.171" /> | ||||
| <PackageReference Include="System.Net.Http" Version="4.3.4" /> | <PackageReference Include="System.Net.Http" Version="4.3.4" /> | ||||
| </ItemGroup> | </ItemGroup> |
| private IStatsService _serviceClient; | private IStatsService _serviceClient; | ||||
| private IIdentityService _identityService; | private IIdentityService _identityService; | ||||
| private Timer _timer; | |||||
| public Worker(ILogger<Worker> logger) | public Worker(ILogger<Worker> logger) | ||||
| { | { | ||||
| _logger = logger; | _logger = logger; | ||||
| } | } | ||||
| public override Task StartAsync(CancellationToken cancellationToken) | public override Task StartAsync(CancellationToken cancellationToken) | ||||
| { | { | ||||
| _logger.LogInformation("Service is starting."); | |||||
| _timer = new Timer(DoWork, null, TimeSpan.Zero, | |||||
| TimeSpan.FromSeconds(5)); | |||||
| return base.StartAsync(cancellationToken); | return base.StartAsync(cancellationToken); | ||||
| } | } | ||||
| private void DoWork(object state) | |||||
| { | |||||
| _logger.LogInformation("Service is running."); | |||||
| } | |||||
| public class GrpcServerStartup | public class GrpcServerStartup | ||||
| { | { | ||||
| public void ConfigureServices(IServiceCollection services) | public void ConfigureServices(IServiceCollection services) |
| <?xml version="1.0" encoding="utf-8"?> | |||||
| <Project ToolsVersion="15.0" Sdk="Microsoft.Docker.Sdk"> | |||||
| <PropertyGroup Label="Globals"> | |||||
| <ProjectVersion>2.1</ProjectVersion> | |||||
| <DockerTargetOS>Linux</DockerTargetOS> | |||||
| <ProjectGuid>5def4bc2-ffbe-4ca8-80d5-cc87d065c0cd</ProjectGuid> | |||||
| <DockerLaunchAction>LaunchBrowser</DockerLaunchAction> | |||||
| <DockerServiceUrl>{Scheme}://localhost:{ServicePort}</DockerServiceUrl> | |||||
| <DockerServiceName>spotifyservice</DockerServiceName> | |||||
| </PropertyGroup> | |||||
| <ItemGroup> | |||||
| <None Include="docker-compose.override.yml"> | |||||
| <DependentUpon>docker-compose.yml</DependentUpon> | |||||
| </None> | |||||
| <None Include="docker-compose.yml" /> | |||||
| <None Include=".dockerignore" /> | |||||
| </ItemGroup> | |||||
| </Project> |
| version: '3.4' | |||||
| services: | |||||
| spotifyservice: | |||||
| environment: | |||||
| - ASPNETCORE_ENVIRONMENT=Development | |||||
| - ASPNETCORE_URLS=https://localhost:5001;http://localhost:5000 | |||||
| ports: | |||||
| - "5001" | |||||
| - "5000" | |||||
| volumes: | |||||
| - ${APPDATA}/Microsoft/UserSecrets:/root/.microsoft/usersecrets:ro | |||||
| - ${APPDATA}/ASP.NET/Https:/root/.aspnet/https:ro | |||||
| identityprovider: | |||||
| environment: | |||||
| - ASPNETCORE_ENVIRONMENT=Development | |||||
| - ASPNETCORE_URLS=https://+:443;http://127.0.0.1:5002 | |||||
| ports: | |||||
| - "5002" | |||||
| - "443" | |||||
| volumes: | |||||
| - ${APPDATA}/Microsoft/UserSecrets:/root/.microsoft/usersecrets:ro | |||||
| - ${APPDATA}/ASP.NET/Https:/root/.aspnet/https:ro | |||||
| spotifyworker: | |||||
| environment: | |||||
| - DOTNET_ENVIRONMENT=Development | |||||
| volumes: | |||||
| - ${APPDATA}/Microsoft/UserSecrets:/root/.microsoft/usersecrets:ro | |||||
| version: '3.4' | |||||
| services: | |||||
| spotifyservice: | |||||
| image: ${DOCKER_REGISTRY-}spotifyservice | |||||
| build: | |||||
| context: . | |||||
| dockerfile: SpotifyService/Dockerfile | |||||
| identityprovider: | |||||
| image: ${DOCKER_REGISTRY-}identityprovider | |||||
| build: | |||||
| context: . | |||||
| dockerfile: IdentityProvider/Dockerfile | |||||
| spotifyworker: | |||||
| image: ${DOCKER_REGISTRY-}spotifyworker | |||||
| build: | |||||
| context: . | |||||
| dockerfile: SpotifyWorker/Dockerfile | |||||
| { | |||||
| "profiles": { | |||||
| "Docker Compose": { | |||||
| "commandName": "DockerCompose", | |||||
| "commandVersion": "1.0", | |||||
| "serviceActions": { | |||||
| "identityprovider": "StartDebugging", | |||||
| "spotifyservice": "StartDebugging", | |||||
| "spotifyworker": "StartDebugging" | |||||
| } | |||||
| } | |||||
| } | |||||
| } |