Contributors mailing list archives

contributors@odoo-community.org

Browse archives

Avatar

Docker for OCA/OCB

by
Elico Corp, Eric Caudal
- 20/10/2015 03:37:57
Dear community contributors,
We are currently using docker for our infrastructure and it has been quite a challenge to finetune the setup and deployment but we are finally getting there.

A difficult but fruitful learning
Besides we have an additional constraint which was to be able to execute Odoo in China which was challenging because Google content is currently blocked here.
We have tried many options and dockers but we wanted to automate as much as possible the docker creation and mirroring to China which we actually succeeding.
Versions of docker have evolved quite a lot and we recently came to the decision to deploy with docker-compose. There are still some shortcomings (log management is a pain) and bugs (if a download fails you need to restart docker for the server which is restarting all services...).
We are still on the way but we are quite happy with the result were now we can deploy in 5 min any github Odoo specific repository.

Odoo in docker
Our dockers are based on OCB, for v7, v8 and v9.
Chinese dockers are available for v7 and v8.
Chinese v9 will come in few days: they are based on OCB and replace all forbidden content by local mirrors.
For obvious reasons Enterprise will have to be built by the partners themselves on top of the v9 community docker.

Our dockerfiles are here: https://github.com/Elico-Corp/odoo-docker
You can download the dockers here: https://hub.docker.com/u/elicocorp/

NB: Actually, you can speed up docker download in China by adding in your /etc/default/docker file the following:
DOCKER_OPTS="--registry-mirror=https://docker.mirrors.ustc.edu.cn"
(or your favorite mirror for other countries) and restart the service.

How to get started
(a very quick one: we will publish a complete blogpost soon)
You need to install docker (>1.8) and docker-compose in your vm: https://docs.docker.com/installation/
Launch the command to pull docker images:
- docker pull postgres:9.4
- docker pull elicocorp/odoo:9.0
(or docker pull elicocorp/odoo-cn:8.0 if you want version 8 of the Chinese code)
- Create a specific directory and create one file docker-compose.yml for postgresql and Odoo (we will soon push an example in our github)
- docker-compose up
et voilà Odoo will be available at port 8069.

We will publish in the coming days additional resources to automate the install for separate repos at docker build.

Contributing to OCA
Now, some contributors are having interesting discussions about recipes, voodoo, dockers etc. They are all interesting tools and probably complementary. Objectives of the users might be very different and each tool will bring advantages accordingly.

Everybody is welcome to propose contribution to our repository but we think it could be the moment to start having proper docker technology for the OCA.
Who would be willing to contribute?
I would propose to create a repository packaging (where we could find the anybox-buildout, docker files, voodoo and/or other packaging tools)
For docker files, we could start the contribution by pushing our code to the OCA or of course any other good alternative.

--
Eric Caudal [Founder and CEO]
Skype: elico.corp. Phone: + 86 186 2136 1670 (Cell), + 86 21 6211 8017/27/37 (Office)
Elico Shanghai (Shenzhen/Singapore) Odoo Gold Partner, best Odoo Partner 2014 for APAC

Follow-Ups