on 079783e help sign in
searx/Dockerfile
89 lines 2.6 kB history raw
1FROM alpine:3.12
2ENTRYPOINT ["/sbin/tini","--","/usr/local/searx/dockerfiles/docker-entrypoint.sh"]
3EXPOSE 8080
4VOLUME /etc/searx
5VOLUME /var/log/uwsgi
7ARG GIT_URL=unknown
8ARG VERSION_GITCOMMIT=unknown
9ARG SEARX_GIT_VERSION=unknown
11ARG SEARX_GID=977
12ARG SEARX_UID=977
14RUN addgroup -g ${SEARX_GID} searx && \
15 adduser -u ${SEARX_UID} -D -h /usr/local/searx -s /bin/sh -G searx searx
17ARG TIMESTAMP_SETTINGS=0
18ARG TIMESTAMP_UWSGI=0
19ARG LABEL_VCS_REF=
20ARG LABEL_VCS_URL=
22ENV INSTANCE_NAME=searx \
23 AUTOCOMPLETE= \
24 BASE_URL= \
25 MORTY_KEY= \
26 MORTY_URL=
28WORKDIR /usr/local/searx
31COPY requirements.txt ./requirements.txt
33RUN apk upgrade --no-cache \
34 && apk add --no-cache -t build-dependencies \
35 build-base \
36 py3-setuptools \
37 python3-dev \
38 libffi-dev \
39 libxslt-dev \
40 libxml2-dev \
41 openssl-dev \
42 tar \
43 git \
44 && apk add --no-cache \
45 ca-certificates \
46 su-exec \
47 python3 \
48 py3-pip \
49 libxml2 \
50 libxslt \
51 openssl \
52 tini \
53 uwsgi \
54 uwsgi-python3 \
55 && pip3 install --upgrade pip \
56 && pip3 install --no-cache -r requirements.txt \
57 && apk del build-dependencies \
58 && rm -rf /root/.cache
60COPY --chown=searx:searx . .
62RUN su searx -c "/usr/bin/python3 -m compileall -q searx"; \
63 touch -c --date=@${TIMESTAMP_SETTINGS} searx/settings.yml; \
64 touch -c --date=@${TIMESTAMP_UWSGI} dockerfiles/uwsgi.ini; \
65 if [ ! -z $VERSION_GITCOMMIT ]; then\
66 echo "VERSION_STRING = VERSION_STRING + \"-$VERSION_GITCOMMIT\"" >> /usr/local/searx/searx/version.py; \
67 fi
70# Keep this argument at the end since it change each time
71ARG LABEL_DATE=
72LABEL maintainer="searx <${GIT_URL}>" \
73 description="A privacy-respecting, hackable metasearch engine." \
74 version="${SEARX_GIT_VERSION}" \
75 org.label-schema.schema-version="1.0" \
76 org.label-schema.name="searx" \
77 org.label-schema.version="${SEARX_GIT_VERSION}" \
78 org.label-schema.url="${LABEL_VCS_URL}" \
79 org.label-schema.vcs-ref=${LABEL_VCS_REF} \
80 org.label-schema.vcs-url=${LABEL_VCS_URL} \
81 org.label-schema.build-date="${LABEL_DATE}" \
82 org.label-schema.usage="https://github.com/searx/searx-docker" \
83 org.opencontainers.image.title="searx" \
84 org.opencontainers.image.version="${SEARX_GIT_VERSION}" \
85 org.opencontainers.image.url="${LABEL_VCS_URL}" \
86 org.opencontainers.image.revision=${LABEL_VCS_REF} \
87 org.opencontainers.image.source=${LABEL_VCS_URL} \
88 org.opencontainers.image.created="${LABEL_DATE}" \
89 org.opencontainers.image.documentation="https://github.com/searx/searx-docker"