Skip to content

Instantly share code, notes, and snippets.

@GabbasovDinar
Last active February 25, 2019 11:40
Show Gist options
  • Save GabbasovDinar/2c8179080b86e4dc07aa275f0af54b40 to your computer and use it in GitHub Desktop.
Save GabbasovDinar/2c8179080b86e4dc07aa275f0af54b40 to your computer and use it in GitHub Desktop.

Create postgres docker container

VERSION=12.0
DB_CONTAINER=db-odoo-$VERSION
docker run -d -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo --name $DB_CONTAINER postgres:9.5

Create wdb docker container

docker run -d -p 1984:1984 --name wdb kozea/wdb

Create odoo docker container

ODOO_CONTAINER=some-container-name
ODOO_BRANCH=$VERSION
MODULE=some-module-technical-name
NAME=pos

docker run \
--name $ODOO_CONTAINER \
--link wdb:wdb -e WDB_SOCKET_SERVER=wdb -e WDB_NO_BROWSER_AUTO_OPEN=True \
-p 8069:8069 -p 8072:8072 -e ODOO_MASTER_PASS=master \
--link $DB_CONTAINER:db \
-v ~/docker/odoo-$VERSION/pos-addons:/mnt/addons/it-projects-llc/pos-addons \
-v ~/docker/odoo-$VERSION/odoo/:/mnt/odoo-source/ \
-t itprojectsllc/install-odoo:$VERSION \
-- \
-d $NAME --db-filter=^%d$ \
--log-handler=odoo.addons.$MODULE:DEBUG \
-i $MODULE

Create docker container for tests

FOLDER=pos-addons
MOUNT_POINT=it-projects-llc/pos-addons
[[ -z $MODULE ]] && echo "Set MODULE" || \
docker run --rm \
--link db-odoo-$VERSION:db  \
--link wdb:wdb -e WDB_SOCKET_SERVER=wdb -e WDB_NO_BROWSER_AUTO_OPEN=True \
-v ~/docker/odoo-$VERSION/$FOLDER:/mnt/addons/$MOUNT_POINT \
-t itprojectsllc/install-odoo:$VERSION \
--  \
--test-enable --stop-after-init --workers=0 \
-d $NAME --db-filter=.* \
--log-handler=odoo.addons.$MODULE:DEBUG \
-i $MODULE

Update Path (if not display some modules)

docker exec -i -u root -t $ODOO_CONTAINER /bin/bash -c "export UPDATE_ADDONS_PATH='yes'; bash /install-odoo-saas.sh" && docker restart $ODOO_CONTAINER

Creating an image where there is a docker file

PATH=some-path-to-docker-file
cd $PATH
docker build . -t docker-file-name

Parameters of container

runlike $ODOO_CONTAINER

Control dockers

# Update all repos
docker exec -t $ODOO_CONTAINER /bin/bash -c "export GIT_PULL=yes; bash /install-odoo-saas.sh"

# Update odoo only
docker exec -t $ODOO_CONTAINER git -C /mnt/odoo-source/ pull

# Update misc-addons only
docker exec -t $ODOO_CONTAINER git -C /mnt/addons/it-projects-llc/misc-addons pull

# open docker terminal as odoo
docker exec -i -t $ODOO_CONTAINER /bin/bash

# open docker terminal as root
docker exec -i -u root -t $ODOO_CONTAINER /bin/bash

# watch logs
docker attach $ODOO_CONTAINER

# stop container
docker stop $ODOO_CONTAINER

# start container
docker start $ODOO_CONTAINER

# remove container (if you don't need one anymore or want to recreate it)
docker rm $ODOO_CONTAINER
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment