diff --git a/python-poetry/Dockerfile b/python-poetry/Dockerfile new file mode 100644 index 0000000..169e5b4 --- /dev/null +++ b/python-poetry/Dockerfile @@ -0,0 +1,43 @@ +FROM python:3.8.5 + +# python: +ENV PYTHONFAULTHANDLER=1 \ + PYTHONUNBUFFERED=1 \ + PYTHONHASHSEED=random \ + PYTHONDONTWRITEBYTECODE=1 \ + # pip: + PIP_NO_CACHE_DIR=off \ + PIP_DISABLE_PIP_VERSION_CHECK=on \ + PIP_DEFAULT_TIMEOUT=100 \ + # poetry: + POETRY_VERSION=1.1.4 \ + POETRY_NO_INTERACTION=1 \ + POETRY_VIRTUALENVS_CREATE=false \ + POETRY_CACHE_DIR='/var/cache/pypoetry' \ + PATH="$PATH:/root/.poetry/bin" + +RUN apt update \ + && apt-get update \ + && apt-get install --no-install-recommends -y \ + bash \ + build-essential \ + curl \ + gettext \ + git \ + libpq-dev \ + nano \ + && export TERM=xterm \ + # Installing `poetry` package manager: + # https://github.com/python-poetry/poetry + && curl -sSL 'https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py' | python \ + && poetry --version + +COPY ./pyproject.toml /code/ + +WORKDIR /code + +RUN poetry lock + +WORKDIR /poetry + + diff --git a/python-poetry/docker-compose.yml b/python-poetry/docker-compose.yml new file mode 100644 index 0000000..7a680fc --- /dev/null +++ b/python-poetry/docker-compose.yml @@ -0,0 +1,14 @@ +version: '3.7' + +services: + python: + image: poetry-python:latest + container_name: 'poetry-python' + build: + context: . + dockerfile: Dockerfile + volumes: + - ./poetry/:/poetry/ + command: > + bash -c "cp /code/pypoetry.toml poetry.lock /poetry -r + && sleep 5" \ No newline at end of file diff --git a/python-poetry/poetry/.gitkeep b/python-poetry/poetry/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/python-poetry/pyproject.toml b/python-poetry/pyproject.toml new file mode 100644 index 0000000..ff71f4d --- /dev/null +++ b/python-poetry/pyproject.toml @@ -0,0 +1,48 @@ +[tool.poetry] +name = "telegrambot" +version = "0.1.0" +description = "my bot for telegram" +authors = ["Dmitry Afanasyev "] + +[tool.poetry.dependencies] +python = "3.8.5" +telebot = "0.0.4" +psycopg2-binary = "^2.8" +python-decouple = "^3.3" +requests = "2.23.0" +pytelegrambotapi = "3.6.6" +dependency_injector = "3.15.6" +geocoder = "1.38.1" +jinja2 = "2.11.1" +ciso8601 = "2.1.3" +cachetools = "4.0.0" +pandas = "1.0.3" +flask = "1.1.2" +sqlalchemy = "1.3.22" + +django = "^3.1" +django-split-settings = "^1.0" +django-health-check = "^3.16" +celery = "^5.0.4" +django-celery-results = "^2.0.0" +django-celery-beat = "^2.1.0" +eventlet = "0.30.0" +django-constance="2.8.0" +redis="3.5.3" +django-picklefield="3.0.1" +docutils="0.16" +whitenoise = "^5.2.0" +gunicorn = "^20.0" +bcrypt = "^3.2" +django-debug-toolbar = "^3.2" +django-querycount = "^0.7" +django-extra-checks = "^0.8" +django-coverage-plugin = "^1.8" +nplusone = "^1.0" + +[tool.poetry.dev-dependencies] + + +[build-system] +requires = ["poetry-core>=1.0.0"] +build-backend = "poetry.core.masonry.api"