Browse Source

Create Dockerfile for migrations

pull/952/head
Atakan Özceviz 7 years ago
parent
commit
79c17ef7e5
  1. 21
      templates/service/database/Dockerfile
  2. 12
      templates/service/database/entrypoint.sh

21
templates/service/database/Dockerfile

@ -0,0 +1,21 @@
FROM microsoft/dotnet:2.2-sdk-alpine AS build
RUN apk add --no-cache bash
COPY . .
WORKDIR /templates/service/host/IdentityServerHost
RUN dotnet restore -nowarn:msb3202,nu1503
RUN dotnet build --no-restore -c Release
WORKDIR /templates/service/host/MyCompanyName.MyProjectName.Host
RUN dotnet restore -nowarn:msb3202,nu1503
RUN dotnet build --no-restore -c Release
FROM build AS final
WORKDIR /src
COPY --from=build /templates/service/host/IdentityServerHost ./IdentityServerHost
COPY --from=build /templates/service/host/MyCompanyName.MyProjectName.Host ./MyCompanyName.MyProjectName.Host
COPY --from=build /templates/service/database/entrypoint.sh .
RUN /bin/bash -c "sed -i $'s/\r$//' entrypoint.sh"
RUN chmod +x ./entrypoint.sh
ENTRYPOINT ["./entrypoint.sh"]

12
templates/service/database/entrypoint.sh

@ -0,0 +1,12 @@
#!/bin/bash
cd IdentityServerHost
export ConnectionStrings__Default=$IdentityServerConnectionString
until dotnet ef database update --no-build; do
>&2 echo "SQL Server is starting up"
sleep 1
done
export ConnectionStrings__Default=$MyProjectNameConnectionString
cd MyCompanyName.MyProjectName.Host && dotnet ef database update --no-build
Loading…
Cancel
Save