feat: add Dockerfile.dev + update Makefile

* this allows us to use a separate Dockerfile for debug builds
* new Makefile targets have been added and definitions have been
  somewhat simplified
This commit is contained in:
surtur 2020-11-26 02:23:50 +01:00
parent a96fb72ea9
commit 6e267e702b
Signed by: wanderer
GPG Key ID: 19CE1EC1D9E0486D
2 changed files with 45 additions and 10 deletions

15
Dockerfile.dev Normal file
View File

@ -0,0 +1,15 @@
FROM mcr.microsoft.com/dotnet/core/sdk:2.1-alpine
COPY . /src
WORKDIR /src
RUN sed -i 's/2.1.519/2.1.811/' global.json
RUN dotnet --version && dotnet --info
RUN dotnet clean
RUN dotnet restore "pwt-0x01-ng.csproj"
RUN dotnet build -c Debug
ENV ASPNETCORE_ENVIRONMENT=Development
ENTRYPOINT ["dotnet", "watch", "run", "--no-restore", "--urls", "http://0.0.0.0:5000"]

View File

@ -1,24 +1,44 @@
dockertag = netcoreultimapp
localport = 8000
dtag = netcoreultimapp
dtagdev = netcoreultimapp-dev
dfile = Dockerfile
dfiledev = $(dfile).dev
lport = 8000
lportdev = 8001
CC = dotnet
dev: restore build run
restore:
dotnet restore
$(CC) restore
build:
dotnet run .
$(CC) build .
dev: restore build
run:
$(CC) run .
releasebuild: clean restore
dotnet publish -c Release
$(CC) publish -c Release
dockerbuild: releasebuild
docker build -t $(dockertag) -f Dockerfile .
docker build -t $(dtag) -f $(dfile) .
dockerdevbuild:
docker build -t $(dtagdev) -f $(dfiledev) .
dockerrun:
docker run -p $(localport):80 netcoreultimapp
@echo ======================
@echo local port: $(lport)
@echo ======================
docker run --rm -p $(lport):80 $(dtag)
dockerdev: dockerbuild dockerrun
dockerdevrun:
@echo ======================
@echo local dev port: $(lportdev)
@echo ======================
docker run --rm -p $(lportdev):5000 $(dtagdev)
dockerdev: dockerdevbuild dockerdevrun
clean:
dotnet clean
$(CC) clean