tools: add etesync server container image build config for production
parent
46f165b3e3
commit
bc01714dc1
@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
TAG="${1:-eteserver}"
|
||||||
|
TOOLS_DIR="$(dirname "$0")"
|
||||||
|
exec podman build -t "${TAG}" -f "${TOOLS_DIR}/server.containerfile" "${TOOLS_DIR}/../server"
|
@ -0,0 +1,30 @@
|
|||||||
|
FROM python:3.11-alpine
|
||||||
|
|
||||||
|
ENV PIP_DISABLE_PIP_VERSION_CHECK=1 \
|
||||||
|
PIP_NO_CACHE_DIR=1 \
|
||||||
|
PIP_ROOT_USER_ACTION=ignore
|
||||||
|
|
||||||
|
# install system pkg deps
|
||||||
|
RUN apk add libpq postgresql-dev --virtual .build-deps coreutils gcc libc-dev libffi-dev make
|
||||||
|
|
||||||
|
COPY etebase_server/ /app/etebase_server/
|
||||||
|
COPY requirements.txt manage.py /app/
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
# 1. install app pip requirements
|
||||||
|
# 2. generate static files
|
||||||
|
# 3. cleanup
|
||||||
|
RUN pip install -U pip && \
|
||||||
|
pip install --no-cache-dir --progress-bar off -r ./requirements.txt && \
|
||||||
|
pip install --no-cache-dir --progress-bar off psycopg2==2.9.6 && \
|
||||||
|
\
|
||||||
|
python manage.py collectstatic --noinput && \
|
||||||
|
\
|
||||||
|
apk del .build-deps make gcc coreutils && \
|
||||||
|
apk add libpq && \
|
||||||
|
rm -rf /root/.cache
|
||||||
|
|
||||||
|
ENV ETEBASE_EASY_CONFIG_PATH=/app/server.conf
|
||||||
|
VOLUME /data
|
||||||
|
|
||||||
|
ENTRYPOINT ["uvicorn", "etebase_server.asgi:application"]
|
Loading…
Reference in New Issue