Skip to content

it-projects-llc/odoo-docker-deployment

Repository files navigation

Разворачивание odoo сервера с помощью docker-compose

Перед тем как начать

  • Устанавливаем git. Обычно через команду sudo apt-get install git.
  • Редактируем Dockerfile. Поправляем версию Odoo, если требуется.
  • Выставляем переменные окружения
export ODOO_VERSION=14.0  # Используем его для выполнения каких-либо команд данной инструкции.
export ODOO_DATABASE=mycompany  # название базы, в котором все будем устанавливать
export ODOO_PORT=8069  # порт, на котором будет запущен odoo
export LONGPOLLING_PORT=8072  # порт, на котором будет запущен longpolling
  • Выставляем владельца на каталог backups:
sudo chown 101:101 backups
  • Генерируем конфиг-файлы (nginx.conf и docker-compose.yml):
./make_config.py
  • Редактируем nginx.conf. Напротив server_name перечисляем через домены, которые будут использоваться
  • Редактируем odoo.conf. Выставляем нужные параметры. Среди них:
    • список каталогов с модулями. Для auto_backup каталог уже добавлен, а для остальных делаем по примеру.
    • admin_password. Оставлять стандартным не рекомендую.
  • В каталоге vendor клонируем репозитории с модулями. Среди обязательных это репозиторий с auto_backup.
cd vendor
git clone https://github.com/Yenthe666/auto_backup.git -b $ODOO_VERSION --single-branch

Установка docker и docker-compose

Для Debian подготовлен скрипт install_docker_debian.sh.

Для других операционных систем надо смотреть тут https://docs.docker.com/engine/install/ и тут https://docs.docker.com/compose/install/

Установка nginx

Для Debian и Ubuntu подобных

sudo apt-get install nginx

Установка certbot

Не требуется, если у клиента есть свой сертификат и сам будет его обновлять.

sudo apt-get install certbot python3-certbot-nginx

Настройка nginx

Есть готовый шаблон.

sudo cp ./nginx.conf /etc/nginx/sites-available/nginx_odoo.conf
sudo ln -s /etc/nginx/sites-available/nginx_odoo.conf /etc/nginx/sites-enabled/nginx_odoo.conf

Убеждаемся, что все правильно настроили:

sudo nginx -t

Если на выводе будет что-то вроде "все ок", то продолжаем. Если нет, то исправляем ошибки и после чего продолжаем.

sudo service nginx restart

Привязка сертификата от Let's Encrypt

Выполняем команду ниже и отвечаем на вопросы

sudo certbot

Разворачивание odoo

В новой базе сразу устанавливаем auto_backup

sudo docker-compose run --rm web odoo -d $ODOO_DATABASE -i auto_backup --stop-after-init

Убеждаемся, что ошибок никаких не было.

Далее снова запускаем Odoo без привязки с консоли:

sudo docker-compose up -d web

Открываем браузер, заходим в Odoo

  • Логин: admin, пароль: admin
  • Основное меню >> Settings >> Activate developer mode
  • Основное меню >> Settings >> Technical >> Configure back-ups
  • Create
  • Параметры по-умолчанию заданы корректно. Save
  • Technical >> Scheduled Actions
  • Открываем Backup scheduler
  • Нажимаем на "Run manually"
  • При успехе в каталоге backups будет создан дамп
  • Переключаем значение поле Active. Должно иметь состояние "Включено"

Готово. Дальше уже устанавливаем нужные модули, настраиваем пользователей и прочее

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published