Odoo 17 with Docker in Minutes (openSUSE Guide)

I recently started learning Odoo — exploring how it works and how it can actually solve real problems for enterprises. As the first step in my learning journey, I set up a local instance using Docker and Docker Compose.
In my first article, I promised to share every little step of this journey with you guys. So, here I am, starting with the basics.
We’ll begin by installing Docker on openSUSE.
Installing Docker Engine
The official Docker docs don’t cover openSUSE directly, but the process is very easy and simple.
zypper install docker docker-compose
This alone is enough to do all the work and you can chill while it does.
To make sure it works on your system, enable it first:
sudo systemctl enable --now docker
And to avoid typing sudo
with every Docker command, add your user to the Docker group:
sudo usermod -aG docker $USER
newgrp docker
Setting Up for Odoo
Now that Docker and Docker Compose are ready, let’s:
- Create a working directory
- Add a compose.yml file
- Pull the Odoo and PostgreSQL images
- Spin up your Odoo instance
Note: Odoo uses PostgreSQL as its database. Since we’re running everything in Docker, you don’t need to install PostgreSQL on your host machine — Docker will handle it for you.
First, let’s create a directory where we’ll keep our project files:
mkdir helloworld_odoo && cd helloworld_odoo
Next, create a new file named "compose.yml" in that directory:
touch compose.yml
Next, let’s open the compose.yml file and add the following content:
services:
db:
image: postgres:17
environment:
POSTGRES_DB: odoo
POSTGRES_USER: odoo
POSTGRES_PASSWORD: odoo
volumes:
- db-data:/var/lib/postgresql/data
odoo:
image: odoo:17
depends_on:
- db
ports:
- "8069:8069"
volumes:
- odoo-data:/var/lib/odoo
environment:
HOST: db
USER: odoo
PASSWORD: odoo
volumes:
db-data:
odoo-data:
Save the file and then run:
docker compose up -d
Docker will pull both the Odoo and PostgreSQL images, set them up, and start the services.
After a few seconds, head over to your browser and visit:
You should see the Odoo setup screen. Congratulations, You did it.
Subscribe to my newsletter
Read articles from Mohammad Ali directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Mohammad Ali
Mohammad Ali
As-salamu alaykum! I'm Mohammad Ali, and I'm 15. I specialize in Red Teaming, which means I plan, code, build, test, deploy, operate and monitor applications then harden them. I started Development at age 9, learning how software is built. At 13, I learned Docker and Kubernetes — entering the world of systems. Now, at 15, I committed to Red Teaming, while I still keep improving my Development and Operations skillset everyday. The result? I understand the entire DevSecOps lifecycle end-to-end — which is my unique advantage. This profile exists to share my thoughts and mindset.