chore: add docker-based dev env
This commit is contained in:
parent
02ed6be314
commit
7ca416e43e
4 changed files with 23 additions and 9 deletions
19
Dockerfile
19
Dockerfile
|
|
@ -1,14 +1,23 @@
|
|||
FROM golang:1.18.3-alpine3.16
|
||||
FROM golang:1.18.3-alpine3.16 AS base
|
||||
|
||||
ENV APP_ROOT /opt/sfu
|
||||
|
||||
RUN mkdir -p "$APP_ROOT"
|
||||
ARG gid=1000
|
||||
ARG uid=1000
|
||||
RUN mkdir -p "$APP_ROOT" \
|
||||
&& addgroup --system sfu -g $gid \
|
||||
&& adduser -h "$APP_ROOT" --disabled-password --system -u $uid --ingroup sfu sfu
|
||||
WORKDIR "$APP_ROOT"
|
||||
USER sfu:sfu
|
||||
|
||||
FROM base AS build
|
||||
COPY go.mod .
|
||||
COPY main.go .
|
||||
COPY logger.go .
|
||||
|
||||
RUN go build \
|
||||
&& rm -r go.mod *.go
|
||||
ENTRYPOINT [ "/bin/sh", "-c", "$APP_ROOT/main"]
|
||||
|
||||
FROM build AS run_prod
|
||||
ENTRYPOINT [ "/bin/sh", "-c", "$APP_ROOT/main"]
|
||||
|
||||
FROM base AS run_dev
|
||||
ENTRYPOINT [ "/usr/local/go/bin/go", "run", "." ]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue