From 18fe273aa4948b6643bcd4a9cc28de26704ebeb7 Mon Sep 17 00:00:00 2001 From: kvan7 Date: Mon, 22 Jan 2024 03:24:31 +0000 Subject: [PATCH] cahgnes --- Dockerfile | 114 +++++++++++++++++++++++++++++++++++------------------ manage | 2 +- 2 files changed, 77 insertions(+), 39 deletions(-) diff --git a/Dockerfile b/Dockerfile index d08d681c5..d278fea6c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM alpine:3.18 +FROM debian:bullseye-slim ENTRYPOINT ["/sbin/tini","--","/usr/local/searxng/dockerfiles/docker-entrypoint.sh"] EXPOSE 8080 VOLUME /etc/searxng @@ -6,8 +6,11 @@ VOLUME /etc/searxng ARG SEARXNG_GID=977 ARG SEARXNG_UID=977 -RUN addgroup -g ${SEARXNG_GID} searxng && \ - adduser -u ${SEARXNG_UID} -D -h /usr/local/searxng -s /bin/sh -G searxng searxng +# RUN addgroup -g ${SEARXNG_GID} searxng && \ +# adduser -u ${SEARXNG_UID} -D -h /usr/local/searxng -s /bin/sh -G searxng searxng +RUN groupadd -g ${SEARXNG_GID} searxng && \ + useradd -u ${SEARXNG_UID} -d /usr/local/searxng -s /bin/bash -g searxng searxng + ENV INSTANCE_NAME=searxng \ AUTOCOMPLETE= \ @@ -21,33 +24,61 @@ ENV INSTANCE_NAME=searxng \ WORKDIR /usr/local/searxng -COPY requirements.txt ./requirements.txt +# COPY requirements.txt ./requirements.txt -RUN apk add --no-cache -t build-dependencies \ - build-base \ - py3-setuptools \ +# RUN apk add --no-cache -t build-dependencies \ +# build-base \ +# py3-setuptools \ +# python3-dev \ +# libffi-dev \ +# libxslt-dev \ +# libxml2-dev \ +# openssl-dev \ +# tar \ +# git \ +# && apk add --no-cache \ +# ca-certificates \ +# su-exec \ +# python3 \ +# py3-pip \ +# libxml2 \ +# libxslt \ +# openssl \ +# tini \ +# uwsgi \ +# uwsgi-python3 \ +# brotli \ +# && pip3 install --no-cache -r requirements.txt \ +# && apk del build-dependencies \ +# && rm -rf /root/.cache + +# Install necessary packages +RUN apt-get update && apt-get install -y \ + build-essential \ + python3-setuptools \ python3-dev \ libffi-dev \ - libxslt-dev \ + libxslt1-dev \ libxml2-dev \ - openssl-dev \ + libssl-dev \ tar \ git \ - && apk add --no-cache \ ca-certificates \ - su-exec \ - python3 \ - py3-pip \ + python3-pip \ libxml2 \ - libxslt \ + libxslt1.1 \ openssl \ tini \ uwsgi \ - uwsgi-python3 \ + uwsgi-plugin-python3 \ brotli \ - && pip3 install --no-cache -r requirements.txt \ - && apk del build-dependencies \ - && rm -rf /root/.cache + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* + +# Install Python packages from requirements.txt +COPY requirements.txt ./requirements.txt +RUN pip3 install --no-cache -r requirements.txt + COPY --chown=searxng:searxng dockerfiles ./dockerfiles COPY --chown=searxng:searxng searx ./searx @@ -56,10 +87,17 @@ ARG TIMESTAMP_SETTINGS=0 ARG TIMESTAMP_UWSGI=0 ARG VERSION_GITCOMMIT=unknown +# RUN su searxng -c "/usr/bin/python3 -m compileall -q searx" \ +# && touch -c --date=@${TIMESTAMP_SETTINGS} searx/settings.yml \ +# && touch -c --date=@${TIMESTAMP_UWSGI} dockerfiles/uwsgi.ini \ +# && find /usr/local/searxng/searx/static -a \( -name '*.html' -o -name '*.css' -o -name '*.js' \ +# -o -name '*.svg' -o -name '*.ttf' -o -name '*.eot' \) \ +# -type f -exec gzip -9 -k {} \+ -exec brotli --best {} \+ + RUN su searxng -c "/usr/bin/python3 -m compileall -q searx" \ - && touch -c --date=@${TIMESTAMP_SETTINGS} searx/settings.yml \ - && touch -c --date=@${TIMESTAMP_UWSGI} dockerfiles/uwsgi.ini \ - && find /usr/local/searxng/searx/static -a \( -name '*.html' -o -name '*.css' -o -name '*.js' \ + && touch -c --date=@${TIMESTAMP_SETTINGS} searx/settings.yml \ + && touch -c --date=@${TIMESTAMP_UWSGI} dockerfiles/uwsgi.ini \ + && find /usr/local/searxng/searx/static \( -name '*.html' -o -name '*.css' -o -name '*.js' \ -o -name '*.svg' -o -name '*.ttf' -o -name '*.eot' \) \ -type f -exec gzip -9 -k {} \+ -exec brotli --best {} \+ @@ -71,20 +109,20 @@ ARG SEARXNG_DOCKER_TAG=unknown ARG LABEL_VCS_REF= ARG LABEL_VCS_URL= LABEL maintainer="searxng <${GIT_URL}>" \ - description="A privacy-respecting, hackable metasearch engine." \ - version="${SEARXNG_GIT_VERSION}" \ - org.label-schema.schema-version="1.0" \ - org.label-schema.name="searxng" \ - org.label-schema.version="${SEARXNG_GIT_VERSION}" \ - org.label-schema.url="${LABEL_VCS_URL}" \ - org.label-schema.vcs-ref=${LABEL_VCS_REF} \ - org.label-schema.vcs-url=${LABEL_VCS_URL} \ - org.label-schema.build-date="${LABEL_DATE}" \ - org.label-schema.usage="https://github.com/searxng/searxng-docker" \ - org.opencontainers.image.title="searxng" \ - org.opencontainers.image.version="${SEARXNG_DOCKER_TAG}" \ - org.opencontainers.image.url="${LABEL_VCS_URL}" \ - org.opencontainers.image.revision=${LABEL_VCS_REF} \ - org.opencontainers.image.source=${LABEL_VCS_URL} \ - org.opencontainers.image.created="${LABEL_DATE}" \ - org.opencontainers.image.documentation="https://github.com/searxng/searxng-docker" + description="A privacy-respecting, hackable metasearch engine." \ + version="${SEARXNG_GIT_VERSION}" \ + org.label-schema.schema-version="1.0" \ + org.label-schema.name="searxng" \ + org.label-schema.version="${SEARXNG_GIT_VERSION}" \ + org.label-schema.url="${LABEL_VCS_URL}" \ + org.label-schema.vcs-ref=${LABEL_VCS_REF} \ + org.label-schema.vcs-url=${LABEL_VCS_URL} \ + org.label-schema.build-date="${LABEL_DATE}" \ + org.label-schema.usage="https://github.com/searxng/searxng-docker" \ + org.opencontainers.image.title="searxng" \ + org.opencontainers.image.version="${SEARXNG_DOCKER_TAG}" \ + org.opencontainers.image.url="${LABEL_VCS_URL}" \ + org.opencontainers.image.revision=${LABEL_VCS_REF} \ + org.opencontainers.image.source=${LABEL_VCS_URL} \ + org.opencontainers.image.created="${LABEL_DATE}" \ + org.opencontainers.image.documentation="https://github.com/searxng/searxng-docker" diff --git a/manage b/manage index 7e60cea3f..a3315bb25 100755 --- a/manage +++ b/manage @@ -201,7 +201,7 @@ docker.build() { build_msg DOCKER "Last commit : $VERSION_GITCOMMIT" # define the docker image name - GITHUB_USER=$(echo "${GIT_URL}" | sed 's/.*github\.com\/\([^\/]*\).*/\1/') + GITHUB_USER=$(echo "kvan7" | sed 's/.*github\.com\/\([^\/]*\).*/\1/') SEARXNG_IMAGE_NAME="${SEARXNG_IMAGE_NAME:-${GITHUB_USER:-searxng}/searxng}" BUILD="build"