Yo tengo un sistema con Docker en producción y funciona OK. Te recomiendo Docker, pero te implicaría uno o dos días de aprendizaje de los comandos y pruebas. Por ejemplo al no usar la opción rm, no se te va a borrar el Docker.
Existe otra forma de usar Docker, sin que el volúmen de docker este afectado al contenedor, sino que lo que hacés es mapear un disco de docker a un disco real del filesystem, usando el comando -v. De esa forma está bueno también, porque por más que remuevas el contenedor con -rm los datos persisten. Ese creo que es un approach mejor.
La combinación de usar Docker para algunas cosas y en otras no, puede ser buena. Por ejemplo, hay una alternativa de usar al mismo tiempo, un contenedor para postgres, otro contenedor para Odoo y correrlos al mismo tiempo, o también, si ya tengo Postgres funcionando en el sistema local, solamente un contenedor con Odoo que se conecte a ese.
Este ejemplo lanza dos contenedores. Uno para postgres otro para Odoo:
# primero este contenedor lanza postgres
sudo docker run --rm -ti --name postgres \
-v /opt/database:/var/lib/postgresql/data \
-v /var/log/postgresql:/var/log/postgresql postgres:9.3
# crea ux|n contenedor postgres que se borra al apagarse pero los datos quedan
# reemplazar -ti por -d para correrlo como demonio
#Para conectarte a la base y crear un usuario valido para odoo:
sudo docker run -it --link postgres:postgres --rm postgres \
sh -c 'exec psql -h "$POSTGRES_PORT_5432_TCP_ADDR" \
-p "$POSTGRES_PORT_5432_TCP_PORT" -U postgres'
# and then create the odoo user with the following SQL commands:
CREATE USER odoo WITH PASSWORD 'odoo';
ALTER USER odoo WITH SUPERUSER;
# Finally you can launch odoo connected to postgres with the following command:
sudo docker run --rm -ti --name odoo --link postgres:odoo-db \
-p 5432:5432 8069:8069 adhoc/odoo-adhoc:8.0