From web developer's viewpoint, I'm going to setup Odoo for the first time. It is going to installed on my local computer (Ubuntu 22.04) and the installation will be from community edition.
Prerequisites
- Git, Python (3.10+), Pip and basics (IDEs and stuff)
- PostgreSQL database (can be community edition)
Initial steps
This is coming from Odoo's official documentation.
- Fork the GitHub repo for the community edition.
- Create a new postgres user. Odoo does not accept
postgres
default user.
sudo -u postgres createuser -d -R -S $USER
createdb $USER
Running Odoo for the first time
The two new databases created on PostgreSQL are: $USER
whatever your username is and the other one called mydb
. Run this command after you clone the Odoo repo and cd
inside.
python3 odoo-bin --addons-path=addons -d mydb
After the server has started (the INFO log odoo.modules.loading: Modules loaded. is printed), open http://localhost:8069 in a web browser and log into the Odoo database with the base administrator account: use admin as the email and, again, admin as the password.
Check the database schema
I ran the ERD for database tool in pgAdmin to inspect the database design for the Odoo community base platform.
From the start there are 114 tables linked in a mesh. So, I chose to dig into the database structure a bit further.
Findings
- Odoo's database model is quite mature as of Version 17 and incorporable to wide contextual range.
- The database structure is monolith. Therefore, decoupling into possible micro-services would be a good prospect as some modules requires scaling different than the other.
- You can refer to Server Framework 101 guide in order to develop your own modules.
Top comments (0)