Fixed Dockerfiles

This commit is contained in:
Elias Stepanik 2023-06-02 17:23:01 +02:00
parent ae1902f4fb
commit 90ee6e7cf5
4 changed files with 130 additions and 46 deletions

View File

@ -1,18 +1,37 @@
FROM mcr.microsoft.com/dotnet/aspnet:7.0 AS base #FROM mcr.microsoft.com/dotnet/aspnet:7.0 AS base
#WORKDIR /app
#EXPOSE 80
#EXPOSE 443
#
#FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build
#WORKDIR /src
#COPY ["Functions/Functions.csproj", "Functions/"]
#RUN dotnet restore "Functions/Functions.csproj"
#COPY . .
#WORKDIR "/src/Functions"
#RUN dotnet build "Functions.csproj" -c Release -o /app/build
#
#FROM build AS publish
#RUN dotnet publish "Functions.csproj" -c Release -o /app/publish /p:UseAppHost=false
#
#FROM base AS final
#WORKDIR /app
#COPY --from=publish /app/publish .
#ENTRYPOINT ["dotnet", "Functions.dll"]
FROM mcr.microsoft.com/dotnet/aspnet:7.0 AS base
WORKDIR /app WORKDIR /app
EXPOSE 80 EXPOSE 80
EXPOSE 443
FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build
WORKDIR /src WORKDIR /src
COPY ["Functions/Functions.csproj", "Functions/"] COPY ["Functions.csproj", "./"]
RUN dotnet restore "Functions/Functions.csproj" RUN dotnet restore "./Functions.csproj"
COPY . . COPY . .
WORKDIR "/src/Functions" WORKDIR "/src/."
RUN dotnet build "Functions.csproj" -c Release -o /app/build RUN dotnet build "Functions.csproj" -c Release -o /app/build
FROM build AS publish FROM build AS publish
RUN dotnet publish "Functions.csproj" -c Release -o /app/publish /p:UseAppHost=false RUN dotnet publish "Functions.csproj" -c Release -o /app/publish
FROM base AS final FROM base AS final
WORKDIR /app WORKDIR /app

View File

@ -0,0 +1,78 @@
using Microsoft.AspNetCore.Mvc;
namespace TestFunction.Controllers;
[ApiController]
[Route("")]
public class TestController : ControllerBase
{
private static readonly string[] Summaries = new[]
{
"Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching"
};
private readonly ILogger<TestController> _logger;
public TestController(ILogger<TestController> logger)
{
_logger = logger;
}
[HttpGet]
public IEnumerable<WeatherForecast> Get()
{
return Enumerable.Range(1, 5).Select(index => new WeatherForecast
{
Date = DateOnly.FromDateTime(DateTime.Now.AddDays(index)),
TemperatureC = Random.Shared.Next(-20, 55),
Summary = Summaries[Random.Shared.Next(Summaries.Length)]
})
.ToArray();
}
[HttpPost]
public IEnumerable<WeatherForecast> Post()
{
return Enumerable.Range(1, 5).Select(index => new WeatherForecast
{
Date = DateOnly.FromDateTime(DateTime.Now.AddDays(index)),
TemperatureC = Random.Shared.Next(-20, 55),
Summary = Summaries[Random.Shared.Next(Summaries.Length)]
})
.ToArray();
}
[HttpPatch]
public IEnumerable<WeatherForecast> Patch()
{
return Enumerable.Range(1, 5).Select(index => new WeatherForecast
{
Date = DateOnly.FromDateTime(DateTime.Now.AddDays(index)),
TemperatureC = Random.Shared.Next(-20, 55),
Summary = Summaries[Random.Shared.Next(Summaries.Length)]
})
.ToArray();
}
[HttpDelete]
public IEnumerable<WeatherForecast> Delete()
{
return Enumerable.Range(1, 5).Select(index => new WeatherForecast
{
Date = DateOnly.FromDateTime(DateTime.Now.AddDays(index)),
TemperatureC = Random.Shared.Next(-20, 55),
Summary = Summaries[Random.Shared.Next(Summaries.Length)]
})
.ToArray();
}
[HttpPut]
public IEnumerable<WeatherForecast> Put()
{
return Enumerable.Range(1, 5).Select(index => new WeatherForecast
{
Date = DateOnly.FromDateTime(DateTime.Now.AddDays(index)),
TemperatureC = Random.Shared.Next(-20, 55),
Summary = Summaries[Random.Shared.Next(Summaries.Length)]
})
.ToArray();
}
}

View File

@ -1,32 +0,0 @@
using Microsoft.AspNetCore.Mvc;
namespace TestFunction.Controllers;
[ApiController]
[Route("")]
public class WeatherForecastController : ControllerBase
{
private static readonly string[] Summaries = new[]
{
"Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching"
};
private readonly ILogger<WeatherForecastController> _logger;
public WeatherForecastController(ILogger<WeatherForecastController> logger)
{
_logger = logger;
}
[HttpGet(Name = "GetWeatherForecast")]
public IEnumerable<WeatherForecast> Get()
{
return Enumerable.Range(1, 5).Select(index => new WeatherForecast
{
Date = DateOnly.FromDateTime(DateTime.Now.AddDays(index)),
TemperatureC = Random.Shared.Next(-20, 55),
Summary = Summaries[Random.Shared.Next(Summaries.Length)]
})
.ToArray();
}
}

View File

@ -1,18 +1,37 @@
FROM mcr.microsoft.com/dotnet/aspnet:7.0 AS base #FROM mcr.microsoft.com/dotnet/aspnet:7.0 AS base
#WORKDIR /app
#EXPOSE 80
#EXPOSE 443
#
#FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build
#WORKDIR /src
#COPY ["TestFunction.csproj", "TestFunction/"]
#RUN dotnet restore "TestFunction/TestFunction.csproj"
#COPY . .
#WORKDIR "/src/TestFunction"
#RUN dotnet build "TestFunction.csproj" -c Release -o /app/build
#
#FROM build AS publish
#RUN dotnet publish "TestFunction.csproj" -c Release -o /app/publish /p:UseAppHost=false
#
#FROM base AS final
#WORKDIR /app
#COPY --from=publish /app/publish .
#ENTRYPOINT ["dotnet", "TestFunction.dll"]
FROM mcr.microsoft.com/dotnet/aspnet:7.0 AS base
WORKDIR /app WORKDIR /app
EXPOSE 80 EXPOSE 80
EXPOSE 443
FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build
WORKDIR /src WORKDIR /src
COPY ["TestFunction/TestFunction.csproj", "TestFunction/"] COPY ["TestFunction.csproj", "./"]
RUN dotnet restore "TestFunction/TestFunction.csproj" RUN dotnet restore "./TestFunction.csproj"
COPY . . COPY . .
WORKDIR "/src/TestFunction" WORKDIR "/src/."
RUN dotnet build "TestFunction.csproj" -c Release -o /app/build RUN dotnet build "TestFunction.csproj" -c Release -o /app/build
FROM build AS publish FROM build AS publish
RUN dotnet publish "TestFunction.csproj" -c Release -o /app/publish /p:UseAppHost=false RUN dotnet publish "TestFunction.csproj" -c Release -o /app/publish
FROM base AS final FROM base AS final
WORKDIR /app WORKDIR /app