Coder Social home page Coder Social logo

stroyprombeton's Introduction

PDD status

Stroyprombeton's site documentation

Репозиторий интернет-магазина stroyprombeton. Разрабатываем по методологии PDD.

Команда

Линк на роли в команде разработки сайта.

Разворачиваем проект

Инструкции для быстрой развёртки проекта для разработки. Подробности смотрите Makefile и drone.yml.

Для сокращения введём такие алиасы::

bash alias dc="docker-compose"
bash alias dcp="docker-compose -f docker-compose-production.yml"

Для разработки

Готовим код к работе

git clone [email protected]:fidals/stroyprombeton.git
cd stroyprombeton/docker/
# this command will ask you to fill some files.
# See this instruction below to get out how to do it.
make deploy-dev

Файлы env make deploy-dev создаст файлы для окружения (env) со стандартными значениями. А затем попросит заполнить их. Пару рекомендаций по заполнению:

  • Генерим случайные: Django secret key, пароли к локальным базам

Проверяем адрес http://127.0.0.1:8020 - загружается сайт. Вместо порта 8020 может быть другой - переменная окружения (env var) VIRTUAL_HOST_PORT.

Установка refarm-site Сайт использует refarm-site как внешнюю зависимость. Интерфейс refarm-site нестабилен, поэтому иногда при разработке фичи сайта нужно поправить код refarm-site вместе с кодом сайта. Для этого можно установить его как зависимость для разработки (pip -e). И примонтировать внутрь контейнера app. Смотрите на переменную окружения REFARM_SITE.

Админка Адрес: /admin/

Логин/пароль: admin/asdfjkl;

Для деплоя

Этот раздел полезен только Архитекторам. Деплой на сервер делаем руками.

make deploy

Бекапы

Создаем бекап

Запускаем специальный контейнер - stb-backup-data:

cd <proj root>/docker
make backup

В результате работы контейнер создаст несколько архивов в хост-системе:

  • /opt/backups/stroyprombeton/database.tar.gz - дамп базы данных
  • /opt/backups/stroyprombeton/media.tar.gz - дамп медиафайлов
  • /opt/backups/stroyprombeton/static.tar.gz - дамп статики

Применяем бекап

Для восстановления базы данных и медиафайлов достаточно запустить make restore. Скрипт скачает последний бекап с сервера и разместит файлы в продакшен-папках. Для доступа к бэкап-серверу используются public+private ключи.

  • /opt/database/stroyprombeton - база данных, используется как volume контейнера stb-postgres
  • /opt/media/stroyprombeton - медиафайлы, используется как volume контейнера stb-source
  • /opt/static/stroyprombeton - статика, не подключается как volume, нужно скопировать вручную в директорию с статикой

N.B.: Некоторые данные (например, медиафайлы) могут иметь большой размер. На момент написания этой заметки, архив с медиафайлами Stroyprombeton весил ~1GB.

Фичи

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.