How to deploy ODOO as a Docker container

Learn how to set up a containerized version of the ODOO ERP solution.

Image: Jack Wallen

ODOO is the rebranded version of the OpenERP Enterprise Resource Planning server. This tool is a suite of applications that can cover all of your business needs from e-commerce and manufacturing or from inventory to accounting and more. Better yet, all of the tools are seamlessly integrated, so all of your ERP needs are covered. ODOO can be deployed in SOHO to Enterprise-level businesses.

If you want to test ODOO, you could take the time to install the full system on a Linux server (See: How to Install ODOO Management Software on Ubuntu 18.04), or you could deploy it as a container, to get it up and running in minutes. This makes for an outstanding way to kick the tires of the system, before taking the time to deploy it in the traditional manner. Or, you could simply deploy it as a container and be done with it.

SEE: System update policy template download (Tech Pro Research)

I'm going to walk you through the process of deploying ODOO as a Docker container. I'll demonstrate on Ubuntu 18.04, but the process will be the same, regardless of platform.

What you need

I'll assume you already have Ubuntu Server up and running and Docker installed and working properly. Besides that, you need a user account that can issue Docker commands without having to use sudo.

With that said, let's deploy.

Deploy the database

The first thing you need to do is to deploy a PostgreSQL container. Log into your Ubuntu Server instance and issue the command:

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

Once that command completes, you'll have a running instance of PostgreSQL, ready for the ODOO deployment.

Deploy ODOO

Now it's time to deploy the ODOO container. We'll deploy on internal and external port 8069 (so that port must be open on your network for this to function properly). To deploy the ODOO container, issue the command:

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

Custom configuration

Do note, this deployment will use a fairly generic configuration. Should you want to make changes to that, you can use your own custom configuration with the help of volumes. This, of course, would require you to write your custom configuration manually or copy one from another deployment you've used.

The ODOO configuration file is found in /etc/odoo/odoo.conf. To make use of volumes, you need to place the file in a directory readable by your Docker user (we'll use /data/odoo.conf as an example). To deploy ODOO, using your custom configuration file, issue the command:

docker run -v /data/odoo.conf:/etc/odoo -p 8069:8069 --name odoo --link db:db -t odoo

Finishing up

Either way, you choose (with your configuration file), open a browser and point it to http://SERVER_IP:8069 (where SERVER_IP is the IP address of your docker server). You will be greeted by the ODOO set-up screen (Figure A), where you can create a new database.

Figure A

Figure A: The ODOO configuration window.

Congratulations, you're ODOO ERP solution is ready to serve. This is a great method for either quickly deploying or testing an outstanding, open source ERP solution.

See also

By Jack Wallen

Jack Wallen is an award-winning writer for TechRepublic and He’s an avid promoter of open source and the voice of The Android Expert. For more news about Jack Wallen, visit his website