All checks were successful
CI / Build wildfly docker images (push) Successful in 3m15s
32 lines
1.1 KiB
Docker
32 lines
1.1 KiB
Docker
FROM alpine:latest AS base
|
|
|
|
ARG VERSION
|
|
|
|
RUN --mount=type=cache,target=/var/cache/apk apk update
|
|
RUN --mount=type=cache,target=/var/cache/apk apk add python3 nodejs libcurl
|
|
|
|
RUN adduser -D -u 1000 jupyterhub
|
|
RUN mkdir -p /var/lib/jupyterhub
|
|
RUN chown jupyterhub:jupyterhub /var/lib/jupyterhub
|
|
|
|
FROM base AS build
|
|
USER root
|
|
RUN --mount=type=cache,target=/var/cache/apk apk add npm curl-dev gcc musl-dev python3-dev
|
|
RUN --mount=type=cache,target=/home/jupyterhub/.cache/pip npm install -g configurable-http-proxy
|
|
USER jupyterhub
|
|
WORKDIR /var/lib/jupyterhub
|
|
RUN python3 -m venv .
|
|
RUN --mount=type=cache,target=/home/jupyterhub/.cache/pip ./bin/pip install "jupyterhub==${VERSION}" jupyterhub_idle_culler dockerspawner psycopg2-binary oauthenticator pycurl
|
|
|
|
|
|
FROM base AS release
|
|
USER root
|
|
COPY --from=build /usr/local/lib/node_modules /usr/local/lib/node_modules
|
|
RUN ln -s ../lib/node_modules/configurable-http-proxy/bin/configurable-http-proxy /usr/local/bin/configurable-http-proxy
|
|
COPY --from=build /var/lib/jupyterhub /var/lib/jupyterhub
|
|
USER jupyterhub
|
|
WORKDIR /home/jupyterhub
|
|
ENV PATH="/var/lib/jupyterhub/bin/:$PATH"
|
|
EXPOSE 43080
|
|
ENTRYPOINT ["jupyterhub"]
|