File size: 1,330 Bytes
3f09b53
07e6cb9
23cf04d
b396485
 
6912231
 
a017923
6912231
 
513c879
6912231
b32af59
 
 
480c7e0
 
6912231
bd9c394
 
 
6912231
f96730c
23cf04d
3f09b53
6912231
 
 
 
 
b396485
 
 
6912231
0817f51
23cf04d
8196b0a
 
 
6912231
b396485
8196b0a
c517481
8196b0a
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
# Użyj oficjalnego obrazu Python 3.10 jako podstawy
FROM python:3.10

# Ustaw katalog roboczy
WORKDIR /code

# Aktualizacja pip
RUN pip install --upgrade pip

# Klonowanie repozytorium Searx
RUN git clone https://github.com/searx/searx.git /code/searx-src

# Kopiowanie pliku webapp.py do katalogu aplikacji
RUN cp /code/searx-src/searx/webapp.py /code/searx/

# Ręczna instalacja pakietu PyYAML z pominięciem izolacji budowania
RUN pip install --no-build-isolation PyYAML==6.0

# Instalacja pakietu lxml z prekompilowanego koła
RUN pip install --pre --no-build-isolation lxml==4.9.2

# Instalacja wymaganych pakietów
RUN pip install -r /code/searx-src/requirements.txt


# Ustawienie środowiska wirtualnego
ENV VIRTUAL_ENV=/usr/local/searx/searx-pyenv
RUN echo "source $VIRTUAL_ENV/bin/activate" > /etc/profile.d/searx-pyenv.sh

# Utworzenie użytkownika i ustawienie uprawnień
RUN useradd -m -s /bin/bash searx && chown -R searx:searx /code
USER searx

# Ustawienie zmiennej środowiskowej wskazującej ścieżkę do pliku ustawień
ENV SEARX_SETTINGS_PATH=/etc/searx/settings.yml

# Kopiowanie domyślnego pliku ustawień
RUN mkdir -p /etc/searx && cp /code/searx-src/utils/templates/etc/searx/use_default_settings.yml /etc/searx/settings.yml

# Udostępnienie portu
EXPOSE 8888


CMD ["python", "/code/searx/webapp.py"]