Code Monkey home page Code Monkey logo

odoo-saas-deployment's Introduction

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

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

  • Убеждаемся, что у клиента:
    • помимо основного домена также настроены поддомены
    • есть настройки smtp сервера
  • Устанавливаем git. Обычно через команду sudo apt-get install git.
  • Редактируем nginx.conf. Напротив server_name перечисляем через домены, которые будут использоваться
  • Редактируем Dockerfile.master. Поправляем версию Odoo, если требуется.
  • Выставляем переменные окружения
export ODOO_VERSION=14.0  # Используем его для выполнения каких-либо команд данной инструкции.
export ODOO_DATABASE=saas  # название базы, в котором все будем устанавливать
  • В каталоге vendor клонируем репозитории с модулями.
./clone_master_modules.sh
./clone_build_modules.sh
  • Редактируем odoo.conf. Выставляем нужные параметры. Среди них:
    • admin_password. Оставлять стандартным не рекомендую.
    • параметры раздела queue_job.

Установка 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/odoo.conf
sudo ln -s /etc/nginx/sites-available/odoo.conf /etc/nginx/sites-enabled/odoo.conf

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

sudo nginx -t

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

sudo service nginx restart

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

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

sudo certbot

Для основного домена сертификат тут-же должен быть доступен. Для субдоменов надо настраивать через TXT-записи.

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

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

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

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

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

sudo docker-compose up -d web

Смотрим последние строки из журнала:

sudo docker-compose logs web

Среди них должно присутствовать следующее:

...INFO...queue_job.jobrunner.runner: starting
...INFO...queue_job.jobrunner.runner: initializing database connections
...INFO...queue_job.jobrunner.runner: queue job runner ready for db <dbname>
...INFO...queue_job.jobrunner.runner: database connections ready

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

  • Логин: admin, пароль: admin
  • Основное меню >> Settings >> Activate developer mode
  • Основное меню >> Settings >> Users and Companies >> Companies >> My Company. Вводим страну, почту и валюту (валюта автоматом меняется при смене страны). Save
  • Основное меню >> Settings >> Technical >> Outgoing email servers Записываем данные почтового сервера, которые есть у клиента. Save.
  • Основное меню >> Settings >> General settings >> Customer Account >> Free sign up >> Save
  • Основное меню >> Settings >> Invoicing >> Customer Payments >> Invoice online payments (on) >> Save
  • Основное меню >> website >> configurations >> manage apps >> Refresh
  • Основное меню >> SaaS >> Operators >> Same Instance
    • DB URLs. Probably http://{db_name}.mycompany.com Если не поддомены не подготовлены, то http://{db_name}.АЙПИ_АДРЕС.nip.io

odoo-saas-deployment's People

Contributors

em230418 avatar

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.