Skip to content
Snippets Groups Projects
Commit fa16f6ff authored by Podosochnyy Maxim's avatar Podosochnyy Maxim
Browse files

Правки

parent b7dd55d7
No related branches found
No related tags found
1 merge request!37Изменен метод запуска демонстрационного сервиса расширений, добавлена возможность проброса изменений пакета perxis-python в контейнер
.docker-compose.override.yml
\ No newline at end of file
docker-compose.override.yml
\ No newline at end of file
FROM python:3.9-slim
ENV PYTHONDONTWRITEBYTECODE=1
ENV PYTHONUNBUFFERED=1
ENV USER=perx
RUN mkdir -p /home/${USER}/data /home/${USER}/app /home/${USER}/logs
WORKDIR /home/${USER}/app
ARG PIP_EXTRA_INDEX_URL=${PIP_EXTRA_INDEX_URL}
ENV PIP_EXTRA_INDEX_URL=$PIP_EXTRA_INDEX_URL
COPY . /home/${USER}/app
RUN pip install perxis==0.0.16
RUN pip install 'watchdog[watchmedo]'
ENV PYTHONPATH="/home/perx/app"
ENV PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python
#CMD ["python", "/home/perx/app/server.py"]
#CMD ["watchmedo auto-restart --recursive --signal SIGTERM python /home/perx/app/server.py"]
CMD ["sh", "watchdog.sh"]
\ No newline at end of file
version: "3.9"
services:
demo-ext-backend:
build:
context: .
dockerfile: Dockerfile.local
args:
- PIP_EXTRA_INDEX_URL=${PIP_EXTRA_INDEX_URL}
ports:
- 50051:50051
volumes:
- .:/home/perx/app
- <Путь к интерпретатору питона>/site-packages/perxis:/usr/local/lib/python3.9/site-packages/perxis
\ No newline at end of file
......@@ -2,15 +2,13 @@ version: "3.9"
services:
demo-ext-backend:
ports:
- 50051:50051
build:
context: .
dockerfile: Dockerfile
args:
- PIP_EXTRA_INDEX_URL=${PIP_EXTRA_INDEX_URL}
restart: unless-stopped
volumes:
- .:/home/perx/app
networks:
- storage
- default
......
......@@ -3,3 +3,12 @@
2. Указать переменную PIP_EXTRA_INDEX_URL
3. docker-compose up
Для того чтобы работал hot reaload и была возможность изменения библиотеки perxis без публикации новой версии нужно:
1. Создать файл docker-compose.override.yml
2. Скопировать в него содержимое docker-compose.override.example.yml
3. Установить на локальный интерпретатор пакет perxis-python
4. В файле docker-compose.override.yml указать путь до site-packages локального интерпретатора
После этого при изменениях в исходном коде (включая правки в пакете perxis) будет перезагружен сервис. Изменения в пакет
perxis нужно будет вносить на локальной машине в каталоге <путь до site-packages>/perxis
watchmedo auto-restart --pattern "*.py;*.json" --recursive --signal SIGTERM \
python ./server.py
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment