mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-11 18:16:40 +00:00
23 lines
1.1 KiB
Docker
23 lines
1.1 KiB
Docker
FROM python:3.10-bullseye AS base
|
|
RUN apt-get update && apt-get install -y \
|
|
unzip \
|
|
&& rm -rf /var/lib/apt/lists/* \
|
|
COPY ./app/ifcopenshell/ifcopenshell.zip /ifcopenshell.zip
|
|
CMD ["unzip", "/ifcopenshell.zip", "-d", "/usr/local/lib/python3.10/site-packages/"]
|
|
WORKDIR /code/app
|
|
COPY ./app/requirements.txt /code/requirements.txt
|
|
RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt
|
|
RUN pip install neo4j==5.9.0 uvicorn ifcopenshell Jinja2 python-multipart bcrypt --upgrade
|
|
# pip install: Install packages.
|
|
# --no-cache-dir: You can shrink the image size by disabling the cache.
|
|
# --upgrade: Upgrade packages.
|
|
# -r: use requirements file.
|
|
COPY ./app /code/app
|
|
|
|
FROM base AS server
|
|
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000", "--proxy-headers", \
|
|
"--ssl-keyfile", "/etc/letsencrypt/live/kontroll.digital/privkey.pem", \
|
|
"--ssl-certfile", "/etc/letsencrypt/live/kontroll.digital/fullchain.pem"]
|
|
# If running behind a proxy like Nginx or Traefik add --proxy-headers.
|
|
# --ssl-keyfile: Path to keyfile.
|
|
# --ssl-certificat: Path to certificate. |