Update Dockerfile
Browse files- Dockerfile +26 -37
Dockerfile
CHANGED
@@ -1,11 +1,10 @@
|
|
1 |
-
|
2 |
-
FROM alpine
|
3 |
|
4 |
WORKDIR /code
|
5 |
|
6 |
-
#
|
7 |
-
RUN apk upgrade --no-cache \
|
8 |
-
|
9 |
python3 \
|
10 |
py3-babel \
|
11 |
py3-pip \
|
@@ -18,42 +17,32 @@ RUN apk upgrade --no-cache \
|
|
18 |
libffi-dev \
|
19 |
openssl-dev \
|
20 |
shellcheck \
|
21 |
-
cython \
|
22 |
-
|
23 |
openssl \
|
24 |
bash \
|
25 |
su-exec
|
26 |
|
27 |
-
#
|
28 |
-
RUN adduser -D -H -s /bin/bash searx \
|
29 |
-
|
30 |
-
|
31 |
|
32 |
-
#
|
33 |
-
USER searx
|
34 |
RUN git clone https://github.com/searx/searx.git /usr/local/searx/searx-src
|
35 |
|
36 |
-
#
|
37 |
-
RUN python3 -m venv /usr/local/searx/searx-pyenv \
|
38 |
-
|
39 |
-
|
40 |
-
#
|
41 |
-
RUN . /usr/local/searx/searx-pyenv/bin/activate \
|
42 |
-
|
43 |
-
|
44 |
-
#
|
45 |
-
RUN . /usr/local/searx/searx-pyenv/bin/activate \
|
46 |
-
|
47 |
-
|
48 |
-
#
|
49 |
-
|
50 |
-
|
51 |
-
&& cp /usr/local/searx/searx-src/utils/templates/etc/searx/use_default_settings.yml /etc/searx/settings.yml \
|
52 |
-
&& sed -i -e "s/ultrasecretkey/$(openssl rand -hex 16)/g" /etc/searx/settings.yml \
|
53 |
-
&& sed -i -e "s/{instance_name}/searx@$(uname -n)/g" /etc/searx/settings.yml
|
54 |
-
|
55 |
-
# Step 9: Start Searx
|
56 |
-
USER searx
|
57 |
-
CMD . /usr/local/searx/searx-pyenv/bin/activate && \
|
58 |
-
export SEARX_SETTINGS_PATH=/etc/searx/settings.yml && \
|
59 |
-
python /usr/local/searx/searx-src/searx/webapp.py
|
|
|
1 |
+
FROM docker.io/library/alpine:latest@sha256:b89d9c93e9ed3597455c90a0b88a8bbb5cb7188438f70953fede212a0c4394e0
|
|
|
2 |
|
3 |
WORKDIR /code
|
4 |
|
5 |
+
# Install dependencies
|
6 |
+
RUN apk upgrade --no-cache && \
|
7 |
+
apk add --no-cache -t build-dependencies \
|
8 |
python3 \
|
9 |
py3-babel \
|
10 |
py3-pip \
|
|
|
17 |
libffi-dev \
|
18 |
openssl-dev \
|
19 |
shellcheck \
|
20 |
+
cython && \
|
21 |
+
apk add --no-cache \
|
22 |
openssl \
|
23 |
bash \
|
24 |
su-exec
|
25 |
|
26 |
+
# Create user and set permissions
|
27 |
+
RUN adduser -D -H -s /bin/bash searx && \
|
28 |
+
mkdir -p /usr/local/searx && \
|
29 |
+
chown searx:searx /usr/local/searx
|
30 |
|
31 |
+
# Clone searx repository
|
|
|
32 |
RUN git clone https://github.com/searx/searx.git /usr/local/searx/searx-src
|
33 |
|
34 |
+
# Create virtual environment
|
35 |
+
RUN python3 -m venv /usr/local/searx/searx-pyenv && \
|
36 |
+
echo ". /usr/local/searx/searx-pyenv/bin/activate" >> /usr/local/searx/.profile
|
37 |
+
|
38 |
+
# Activate virtual environment and install upgraded pip, setuptools, and wheel
|
39 |
+
RUN . /usr/local/searx/searx-pyenv/bin/activate && \
|
40 |
+
pip install -U pip setuptools wheel
|
41 |
+
|
42 |
+
# Install pyyaml separately
|
43 |
+
RUN . /usr/local/searx/searx-pyenv/bin/activate && \
|
44 |
+
pip install pyyaml
|
45 |
+
|
46 |
+
# Install searx dependencies
|
47 |
+
RUN . /usr/local/searx/searx-pyenv/bin/activate && \
|
48 |
+
pip install -e /usr/local/searx/searx-src
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|