Как да инсталирате Odoo с докер и да добавите външни модули

В статията Стъпка по стъпка за настройване на ERP и CRM за вашето МСП Научихме как да стартираме виртуална машина с предварително конфигурирана инсталация на Odoo 8, която ни позволи да се насладим на този ERP по прост и бърз начин, този път искаме да влезем в света на Docker и да инсталираме Odoo, използвайки тази страхотна технология.

По принцип с този урок ще научите как да инсталирате Odoo с докер и да добавите външни модули, които ще ви позволят да подобрите и разширите функционалностите на Odoo. Благодарение на docker можете да имате всяка версия на Odoo на един и същ компютър и да имате няколко екземпляра, които ще улеснят развитието и стартирането по всяко време, във всяка организация и особено във всяка среда.

Процедурата е доста проста, но ще се опитам да я направя възможно най-подробна, стъпките и процедурите ще се фокусират върху дистрибуции с Ubuntu 16.04, но могат лесно да бъдат приложени на всяка дистрибуция на Linux.

Стъпки за инсталиране на Docker и Docker Compose

Инсталирайте Docker

За да инсталирате Docker в Ubuntu, просто изпълнете следната команда:

sudo apt-get install docker.io

Добавете вашия потребител към групата на Docker

Трябва да изпълним следната команда:

sudo gpasswd -a ${USER} docker

Инсталирайте Docker-compose

Най-лесният начин да инсталирате Docker-ompose е да използвате pip, за да изпълните това, изпълнете следната команда:

pip install docker-compose

Инсталирайте Docker-engine

Инсталирайте docker-engine със следната команда:

sudo curl -sSL https://get.docker.com/ | sh

Рестартирайте Docker

За да бъдат взети правилно всички промени, е удобно да рестартирате докера, като използвате:

sudo service docker restart

Създаване на нашия файл docker-compose.yml

След като инсталираме докер, трябва да създадем файла докер-compose.yml В директорията на нашите предпочитания тя ще съдържа основно цялата информация, необходима за разполагане на нашата услуга с Odoo.

nano docker-compose.yml

Този файл ще съдържа следното:

версия: '2' услуги: odoo: image: odoo: 8 рестартиране: винаги портове: - "8069: 8069" връзки: - db обеми: - ./extra-addons:/mnt/extra-addons db: image: postgres: 9.4 рестартиране: винаги среда: - POSTGRES_USER = odoo - POSTGRES_PASSWORD = odoo

В този файл можем да направим следните промени, за да го адаптираме към нашите изисквания:

  • image: odoo:8 : Можете да замените odoo: 8 с версията, от която се нуждаете odoo: 9, odoo: 10, odoo11 или просто odoo: най-новата за най-новата налична версия.
  • ports: - "8069:8069" : Заменете първия порт с порта, който искате, това ще ви помогне да имате няколко екземпляра на odoo, работещи едновременно, например може да изглежда така, ports: - "8070:8069"ports: - "8071:8069" и така нататък
  • image: postgres:9.4 : Можете също да замените изображението postgres, което искате да използвате, особено тази версия ми подхожда доста добре.

Като цяло редове с това докер-compose.yml Извикваме набор от контейнери, които са свързани помежду си, като контейнера на версията odoo и контейнера postgres, също така за първия контейнер заявяваме, че ще слуша порт 8069 (и ще може да осъществи достъп до този, който посочим) и в допълнение е монтиран локален том, наречен extra-addons, който автоматично ще се свърже с / mnt / extra-addons в odoo контейнера.

Накрая е описано потребителското име и паролата, които ще се използват за postgres и се определя, че когато компютърът за гости рестартира услугата докер, той също ще се рестартира, благодарение на параметъра restart: always.

Odoo първоначална настройка

След като сме създали нашите docker-compose.yml, трябва да стартираме екземпляра Odoo, за да направим това от терминала, отиваме в директорията, където е създаденият преди това файл и изпълняваме:

docker-compose up -d

Изтеглянето на необходимите контейнери за докер ще стартира автоматично, базата данни ще стартира и ще можем да осъществим достъп до нашия екземпляр odoo от localhost:8069 или посочения от вас порт. След като влезете в нея, ще е необходимо да създадете нашата база данни, за която трябва да изберем имейл, парола за достъп, език и език, в допълнение към избора дали искаме да импортираме тестови данни за оценка на Odoo.

След като базата данни е създадена, можем да осъществим достъп до odoo и да започнем да се наслаждаваме на нейните предимства.

Добавяне на външни модули към Odoo

El докер-compose.yml което създадохме в предишни стъпки, освен че повишава необходимите изображения на odoo и postgres, той също създава том в нашата директория, за да може да добавя външни модули към нашия екземпляр. За това е достатъчно да копираме модул, съвместим с версията на odoo, която сме изпълнили в споменатата директория, можете да добавите свои собствени модули или да го изтеглите от Odoo приложения.

След като имаме нашия модул в директорията extra-addons (разархивиран), който е в директорията, в която имаме нашата докер-compose.yml, ние продължаваме да му даваме съответните разрешения, така че да може да се чете от нашия докер. Най-простият начин е, че разположени в родителската директория на допълнителни добавки, ние изпълняваме следните команди от терминала:

sudo chown -R гущер: lizard extra-addons / #replace guzard с вашия потребител sudo chmod -R 755 extra-addons /

Сега от нашия екземпляр odoo трябва да активираме режима за разработчици, който в зависимост от версията на odoo, която имате, може да се направи, както следва:

Активирайте режима за разработчици в Odoo 8

Режимът за разработка в Odoo 8 се активира от потребителските профили, за това от менюто влезте в категорията Потребител, намерете вашия администратор и в долната дясна част активирайте характеристиките

режим за разработчици в odoo 8

Активирайте режима за разработчици в Odoo 9

В Odoo 9 отидете в горния десен ъгъл и кликнете върху датата, която е до снимката на потребителския профил, след това отидете на опцията About и в прозореца, който се отваря, изберете Активирайте режима за програмисти.

режим за разработчици в odoo 9

Активирайте режима за разработчици в Odoo 10 и Odoo 11

За да активираме режима за разработчици в Odoo 10 и 11, трябва да отидем в менюто Настройки и в долната дясна част щракнете върху Активирайте режима за програмисти.

режим за разработчици в odoo 10

режим за разработчици в odoo 11

Накрая във всяка от версиите трябва да отидем в менюто на локални модули или приложения и да кликнете върху връзката, за да актуализирате списъка с модули, след което можете да инсталирате модулите, както е обяснено в статията на Как да инсталирам модули в Odoo.

Инсталиране на пакети в нашия докер

Може да се случи, че някой от модулите или помощните програми, които искате да включите в odoo (или характеристика на самия odoo) се нуждае от инсталирането на външни пакети, това може да се направи доста лесно в докер, благодарение на docker exec което е помощна програма, която ни позволява да изпълняваме команди в докер контейнер.

Първото нещо, което трябва да знаем, е името на нашия екземпляр на докер, което се прави със следната команда:

docker ps

За да инсталираме приложение като root в докер, трябва да изпълним следната команда, като го адаптираме към вашите нужди:

docker exec -u root odoo9_odoo_1 pip install xlsxwriter

където docker exec -u root odoo9_odoo_1  показва, че команда ще бъде изпълнена като root в екземпляра odoo9_odoo_1 и pip install xlsxwriter ще бъде командата, която искате да изпълните.

Накрая бих искал да споделя няколко команди, които ще бъдат полезни при работа с docker-composer

# Изпълнява се от директорията на екземпляр на докер и за docker-compose, който изпълнява docker-composer stop # Изпълнява се от директорията на екземпляр на докер и стартира docker-compose docker-composer start # Спиране на всички контейнери docker stop $ (docker ps -a -q) # Изтриване на всички контейнери на докер rm $ (docker ps -a -q) # Изтриване на всички изображения на докер rmi $ (изображения на докер -q)

Надявам се урокът да ви е по вкуса, в бъдещи статии ще започнем да се учим как да използваме Odoo и да го конфигурираме в нашите МСП.


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.

  1.   Гилермо каза той

    Страхотен урок, да видим дали мога да намеря време да го приложа на практика: и Odoo, и Docker изглеждат много интересни. Засега съм зает да видя дали ще науча нещо за уеб скрапинг с помощта на rstudio и докер за selenium-firefox, нещо, за което да проуча DesdeLinux.

    1.    JSON каза той

      Селенът не е за изстъргване, а за разбъркване. Само изстъргването на alcaro XD е само за четене на данни.

      1.    Гуиле каза той

        Е, опитвам се да науча как да чета данни от мрежи и да ги поставя в структурирана таблица или таблици, които да се обработват по-късно. Според Уикипедия:
        Уеб изстъргването е техника, използвана от софтуерни програми за извличане на информация от уебсайтове. Обикновено тези програми симулират навигация на човек в глобалната мрежа или чрез ръчно използване на HTTP протокол, или чрез вграждане на браузър в приложение.
        Wrapper в извличането на данни е програма, която извлича съдържание на определен източник на информация и го преобразува в релационна форма. [1] Много уеб страници представят структурирани данни - телефонни указатели, продуктови каталози и т.н. форматиран за сърфиране от хора с помощта на HTML език.
        Може да е по-обвивка, защото това е информация, структурирана в таблици, да. Много е интересно.

  2.   vistor каза той

    Възможно ли е да го инсталирате на Raspberry pi с Ubuntu Mate?

    1.    лагарто каза той

      Ако е възможно скъпи, да видим дали с малко време мога да направя урок по темата

      1.    Хектор каза той

        това би било отлично, имам няколко PI, които събират прах

        1.    лагарто каза той

          И ми трябва един за тестване 🙁

  3.   анонимен каза той

    Как да изтегля с испански език? Така че приложението е на испански и ако има за Windows?

    1.    лагарто каза той

      Когато създавате базата данни, можете да изберете езика, който предпочитате, ако работи и в Windows (има инсталатор от страницата на odoo)

  4.   победител каза той

    Здравейте, опитвам се да го инсталирам на Raspberry pi 3 и изпълнявам скрипта на Docker:
    докер-компилиране нагоре -d

    Получавам следната грешка:

    ГРЕШКА: няма съответстващ манифест за linux / arm в записите в списъка на манифеста.

    Благодаря.

  5.   Исус каза той

    Урокът е много добър, благодаря и как ще бъдат инсталирани останалите екземпляри, не ми е много ясно, трябва да сложите повече във файла docker-compose.yml, благодаря

  6.   Брайхан Джарамило каза той

    Бихте ли ми помогнали да намеря пътя на добавките, на Mac ли съм? Благодаря много

  7.   Гонсало каза той

    Как би било да инсталирате корпоративната версия?

  8.   Данило каза той

    Здравейте, как би било, ако трябва да актуализирам модул, който програмирам от терминала?