# launch:
DB_CONTAINER=db-odoo-15 ODOO_CONTAINER=odoo-15 ODOO_BRANCH=15.0 docker run -d -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo -e POSTGRES_DB=postgres --name $DB_CONTAINER postgres:12.0 docker run \ -p 15069:8069 \ -p 15072:8072 \ -v /root/addons15/:/mnt/extra-addons/ \ --name $ODOO_CONTAINER \ --link $DB_CONTAINER:db \ -t odoo:$ODOO_BRANCH -- --db-filter=.*
# ------TEMPLATE 1------
# parameters:
DB_CONTAINER=db-new-multi ODOO_CONTAINER=new-multi ODOO_BRANCH=10.0
# run docker container for postgresql:
docker run -d -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo -e POSTGRES_DB=postgres --name $DB_CONTAINER postgres:9.5
# run docker container for odoo:
docker run \ -p 8069:8069 \ -p 8072:8072 \ -e ODOO_MASTER_PASS=admin \ -v /home/odoo-server/odoo-10.0/website-addons/:/mnt/addons/it-projects-llc/website-addons/ \ --name $ODOO_CONTAINER \ --link $DB_CONTAINER:db \ -t itprojectsllc/install-odoo:$ODOO_BRANCH -- -d multi-website --db-filter ^%d$
# ------TEMPLATE 2------
# mount themes # parameters:
DB_CONTAINER=db-11 ODOO_CONTAINER=odoo-11 ODOO_BRANCH=11.0
# run docker container for postgresql:
docker run -d -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo -e POSTGRES_DB=postgres --name $DB_CONTAINER postgres:9.5
# run docker container for odoo:
docker run \ -p 9069:8069 \ -p 9072:8072 \ -e ODOO_MASTER_PASS=admin \ -v /home/odoo-server/odoo-11.0/website-addons/:/mnt/addons/it-projects-llc/website-addons/ \ -v /home/ilmir/enterprise-11/addons/:/mnt/addons/extra/enterprise-11/ \ -v /home/odoo-server/themes/$ODOO_BRANCH/:/mnt/addons/extra/themes/ \ --name $ODOO_CONTAINER \ --link $DB_CONTAINER:db \ -t itprojectsllc/install-odoo:$ODOO_BRANCH -- -d odoo11 --db-filter=.*
# ------TEMPLATE 3------
# mount OCA repo # parameters:
DB_CONTAINER=db-multi-footer ODOO_CONTAINER=multi-footer ODOO_BRANCH=10.0
# run docker container for postgresql:
docker run -d -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo -e POSTGRES_DB=postgres --name $DB_CONTAINER postgres:9.5
# run docker container for odoo:
docker run \ -p 8069:8069 \ -p 8072:8072 \ -e ODOO_MASTER_PASS=admin \ -v /home/odoo-server/OCA/website/:/mnt/addons/OCA/website/ \ --name $ODOO_CONTAINER \ --link $DB_CONTAINER:db \ -t itprojectsllc/install-odoo:$ODOO_BRANCH -- -d multifooter --db-filter=.*
# update addons path:
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
# docker pull to update docker image:
docker pull itprojectsllc/install-odoo
# clean docker:
docker volume rm $(docker volume ls -f dangling=true -q)
# To upgrade docker container, i.e. to launch a container with new parameters (e.g. -u all), you should run docker using --rm key:
docker run --rm \ --link db-odoo-$VERSION:db \ -t itprojectsllc/install-odoo:$VERSION-dev \ -- \ --stop-after-init --workers=0 \ -d $NAME --db-filter=.* \ -u all
Run container together with WDB container (wdb debugger):
docker run \ --name quartet-11.0 \ --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-odoo-11.0:db \ -v ~/docker/odoo-11.0/Quartet:/mnt/addons/extra/Quartet \ -t itprojectsllc/install-odoo:11.0-dev \ -- \ -d quartet --db-filter=^%d$ docker run -d -p 1984:1984 --name wdb kozea/wdb
If you have the error "404 The requested URL was not found ...", make sure that:
1. you run dockerwith correct --load modules, for example "--load=web,base_session_store_psql,ir_attachment_url" but not just --load=ir_attachment_url 2. you use correct parameters: * --db-filter=^%d$ when running container * set proxy_mode = True in the config file
#
sudo ln -s /etc/nginx/sites-available/odoo_nginx.conf /etc/nginx/sites-enabled/
# launch the containers:
docker-compose run -d web
# turn off the containers:
docker-compose down
# restart:
docker-compose restart web
# connect to db container:
docker-compose run --rm web psql -h db -U odoo -d postgres
# it helps when you want to link filestore to odoo container. For example, you remove odoo container and want to create a new one with linking to the existing DB container. There might be a case when you have broken images due to the filestore is not linked to odoo container - so the volume would help in this.
# Create volume:
docker volume create --name odoo15-web-data
# Link volume to the created container using -v odoo15-web-data:/var/lib/odoo
:
docker run \ -p $PORT_ODOO:8069 \ -p $PORT_LONGPOLLING:8072 \ -e ODOO_MASTER_PASS=admin \ -v $FOLDER:/mnt/extra-addons \ -v $FOLDER_ENT:/mnt/enterprise-15.0 \ -v odoo15-web-data:/var/lib/odoo \ --name $ODOO_CONTAINER \ --link $DB_CONTAINER:db \ -t odoo:$ODOO_BRANCH \ -- -d $CLIENT_DB --db-filter=.*
# Fix for the error Error: relation "ir_module_module" does not exist is to execute the following comman in terminal:
docker exec -it $CONTAINER_NAME odoo -i base -d $DB_NAME --stop-after-init
# Open container terminal:
docker exec -u root -it $CONTAINER_NAME bash
# execute /usr/bin/odoo -p $PORT_NUMBER -d $DB_NAME -u $MODULE_NAME
:
/usr/bin/odoo -p 15069 -d website_demo -u base (here we use the port 15069 where the container launched, the database 'website_demo' and upgrading the module 'base')