Instalação da fonte

A ‘instalação’ de fonte não se trata de instalar o Odoo, mas de executá-lo diretamente da fonte.

Usar a fonte do Odoo pode ser mais conveniente para desenvolvedores de módulos, pois é mais fácil de acessar do que pelo uso de instaladores em pacote.

Isso torna a inicialização e a interrupção do Odoo mais flexíveis e explícitas do que os serviços configurados pelos instaladores em pacote. Além disso, permite substituir configurações usando parâmetros de linha de comando sem a necessidade de editar um arquivo de configuração.

Por fim, oferece também maior controle sobre a configuração do sistema e permite manter (e executar) com mais facilidade várias versões do Odoo lado a lado.

Obter as fontes

Há duas maneiras de obter o código-fonte do Odoo: como um arquivo ZIP ou pelo Git.

Arquivar

Edição Community:

Edição Enterprise:

Git

Nota

É necessário ter o Git instalado, e é recomendável ter um conhecimento básico dos comandos do Git para prosseguir.

Para clonar um repositório Git, escolha entre clonar com HTTPS ou SSH. Na maioria dos casos, a melhor opção é o HTTPS. No entanto, escolha SSH para contribuir com o código-fonte do Odoo ou ao seguir o tutorial de Primeiros passos para desenvolvedores.

$ git clone --branch 19.0 --single-branch https://github.com/odoo/odoo.git
$ git clone --branch 19.0 --single-branch https://github.com/odoo/enterprise.git

Nota

O repositório git do Enterprise não contém o código-fonte completo do Odoo. Ele é apenas uma coleção de complementos extras. O código principal do servidor está na edição Community. Executar a versão Enterprise significa executar o servidor a partir da versão Community com a opção addons-path definida para a pasta com a edição Enterprise. É necessário clonar os repositórios Community e Enterprise para ter uma instalação funcional do Odoo Enterprise.

Preparação

Python

O Odoo requer Python 3.10 ou posterior para ser executado.

Alterado na versão 17: Requisito mínimo atualizado de Python 3.7 para Python 3.10.

Use um gerenciador de pacotes para fazer download e instalar o Python 3, se necessário.

Nota

Se já houver Python 3 instalado, certifique-se de que a versão seja 3.10 ou superior, pois as versões anteriores não são compatíveis com o Odoo.

$ python3 --version

Verifique se o pip também está instalado para essa versão.

$ pip3 --version

PostgreSQL

O Odoo usa o PostgreSQL como seu sistema de gerenciamento da base de dados.

Alterado na versão 19: Requisito mínimo atualizado do PostgreSQL 12 para PostgreSQL 13.

Use um gerenciador de pacotes para baixar e instalar o PostgreSQL (versões suportadas: 13.0 ou superior). Isso pode ser feito executando o seguinte:

$ sudo apt install postgresql postgresql-client

Por padrão, o único usuário é o postgres. Como o Odoo proíbe a conexão como postgres, crie um novo usuário PostgreSQL.

$ sudo -u postgres createuser -d -R -S $USER
$ createdb $USER

Nota

Como o usuário do PostgreSQL tem o mesmo nome de login do Unix, é possível se conectar à base de dados sem uma senha.

Nota

Se você deseja usar os recursos de IA do Odoo, a extensão PostgreSQL pg-vector é necessária.

Observe que o pg-vector está disponível apenas para o PostgreSQL versão 15 ou superior.

  1. Navegue até sua pasta temporária

    $ cd /tmp
    
  2. Clone o repositório GitHub do pg-vector:

    $ git clone https://github.com/pgvector/pgvector.git
    
  3. Navegue até o diretório:

    $ cd pgvector
    
  4. Compile a extensão:

    $ make
    
  5. Instale a extensão:

    $ sudo make install
    

Se você encontrar algum problema durante a instalação, certifique-se de verificar as notas de instalação oficiais.

Dependências

O uso de pacotes de distribuição é a maneira preferida de instalar dependências. Como alternativa, instale as dependências do Python com pip.

No Debian/Ubuntu, os seguintes comandos devem instalar os pacotes necessários:

$ cd odoo #CommunityPath
$ sudo ./setup/debinstall.sh

O script setup/debinstall.sh analisará o arquivo debian/control e instalará os pacotes encontrados.

Nota

Para idiomas que usam uma interface da direita para a esquerda (como árabe ou hebraico), o pacote rtlcss é necessário.

  1. Faça download e instale nodejs e npm com um gerenciador de pacotes.

  2. Instalar o rtlcss:

    $ sudo npm install -g rtlcss
    

Aviso

wkhtmltopdf is not installed through pip and must be installed manually in version 0.12.6 for it to support headers and footers. Check out the wkhtmltopdf wiki for more details on the various versions. To draw emojis in PDF reports, wkhtmltopdf needs a black-and-white emoji font, as it cannot draw color ones. On Debian/Ubuntu, the fonts-symbola package covers the emojis up to 2017. For the recent ones, put the NotoEmoji-Regular.ttf file of Noto Emoji in the /usr/local/share/fonts folder.

Executar o Odoo

Depois que todas as dependências estiverem configuradas, o Odoo poderá ser iniciado executando o odoo-bin, a interface de linha de comando do servidor. Ela está localizada na raiz do diretório Odoo Community.

Para configurar o servidor, especifique argumentos de linha de comando ou um arquivo de configuração.

Dica

Para a edição Enterprise, adicione o caminho para os add-ons enterprise ao argumento addons-path. Observe que ele deve vir antes dos outros caminhos em addons-path para que os add-ons sejam carregados corretamente.

As configurações comuns necessárias são:

  • Usuário e senha do PostgreSQL.

  • Personalize os caminhos de complemento além dos padrões para carregar módulos personalizados.

Uma maneira típica de executar o servidor seria:

$ cd /CommunityPath
$ python3 odoo-bin --addons-path=addons -d mydb

Em que CommunityPath é o caminho da instalação do Odoo Community e mydb é o nome da base de dados PostgreSQL.

Depois que o servidor for iniciado (o registro INFO odoo.modules.loading: Módulos carregados. é impresso), abra o site http://localhost:8069 em um navegador da Web e faça login na base de dados do Odoo com a conta de administrador da base: use admin como e-mail e, novamente, admin como senha.

Dica

  • A partir daí, crie e gerencie novos usuários.

  • A conta de usuário usada para fazer login na interface da web do Odoo é diferente do argumento de CLI --db_user.