summaryrefslogtreecommitdiff
path: root/Dockerfile
diff options
context:
space:
mode:
Diffstat (limited to 'Dockerfile')
-rw-r--r--Dockerfile34
1 files changed, 14 insertions, 20 deletions
diff --git a/Dockerfile b/Dockerfile
index 9d7c7c9..d77956f 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,23 +1,17 @@
-FROM python:2-slim
-ENV PYTHONUNBUFFERED 1
-EXPOSE 8000
+FROM golang:1.10 as build
+WORKDIR /go/src/pwman
+RUN go get -d -v gopkg.in/ldap.v2 github.com/gorilla/csrf gopkg.in/jcmturner/gokrb5.v5/client gopkg.in/jcmturner/gokrb5.v5/config github.com/namsral/flag
+COPY *.go ./
-RUN useradd -g www-data uwsgi -u 434 # uid of atlassian on ndn-crowd
-RUN mkdir /app && mkdir -p /opt/pwman && chown -R uwsgi /opt/pwman
-WORKDIR /app
+RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o pwman .
-ADD requirements.txt /app/
+FROM alpine:latest
+RUN apk --no-cache add ca-certificates
+WORKDIR /opt
+COPY --from=build /go/src/pwman/pwman /usr/local/bin/
+COPY create-kdc-principal.pl .
+COPY krb5.conf .
+COPY static static
+COPY templates templates
-RUN apt-get update && \
- echo "krb5-config krb5-config/default_realm string NORDU.NET" | debconf-set-selections && \
- apt-get install -y build-essential libldap-dev libsasl2-dev heimdal-clients libheimdal-kadm5-perl && \
- pip install -r requirements.txt && \
- apt-get remove --purge -y build-essential && \
- apt-get autoremove -y && \
- apt-get clean
-USER uwsgi
-ADD src /app
-ADD other_conf/uwsgi.conf /app/
-ADD start.sh /
-
-ENTRYPOINT [ "/start.sh" ]
+CMD ["pwman"]