Odoo: Instalando o Odoo usando o Docker

From Wiki
Revision as of 13:06, 11 October 2019 by Ebasso (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Instalando

O Odoo vai precisar de um Banco de Dados para gravar as informações, então vamos instalar uma imagem docker do PostgreSQL e do Odoo.

O alias do container executando o Postgres deve ser db, para que o Odoo possa conectar ao Postgres.


1) Iniciando o servidor PostgreSQL

docker run -d -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo -e POSTGRES_DB=postgres --name db postgres:10

2) Iniciando o Odoo pela primeira vez

docker run -p 8069:8069 --name odoo --link db:db -t odoo

Basta acessar a url http://<ip_meu_servidor>:8069 para acessar o Odoo.

Parando e iniciando o Odoo

$ docker stop odoo
$ docker start -a odoo


Usando o Docker compose para instalar

Você pode utilizar o docker-compose para ajustar o ambiente as suas necessidades.

Preparando

mkdir -p /opt/odoo/config
mkdir -p /opt/odoo/addons
mkdir -p /opt/odoo/pgdata
mkdir -p /opt/odoo/webdata

cd /opt/odoo/config
wget https://github.com/odoo/docker/blob/master/12.0/odoo.conf
cd /opt/odoo/

A seguir temos um exemplo do docker-compose.yml:

version: '2'
services:
  web:
    image: odoo:12.0
    depends_on:
      - db
    ports:
      - "8069:8069"
    environment:
      - HOST=db
      - PASSWORD=odoo
      - USER=odoo
    volumes:
      - /opt/odoo/webdata:/var/lib/odoo
      - /opt/odoo/config:/etc/odoo
      - /opt/odoo/addons:/mnt/extra-addons
  db:
    image: postgres:10
    environment:
      - POSTGRES_DB=postgres
      - POSTGRES_PASSWORD=odoo
      - POSTGRES_USER=odoo
      - PGDATA=/var/lib/postgresql/data/pgdata
    volumes:
      - /opt/odoo/pgdata:/var/lib/postgresql/data/pgdata

Depois execute

docker-compose up -d

Desta maneira você irá:

  1. Instalar o postgresql
  2. Instalar o odoo
  3. Definir as variáveis para conexão ao Banco de dados.
  4. Definir o volume das configurações do Odoo
  5. Definir o volume dos addons para o Odoo.
  6. Definir o volume onde o Postgres irá persistir os dados.

Ver também