| .. | ||
| .env | ||
| docker-compose.yml | ||
| Makefile | ||
| README.md | ||
Odoo
Odoo, Open Source ERP.
All your business on one platform, Simple, efficient, yet affordable
Odoo pigsty installation tutorial: Self-hosting Odoo
Check public demo: http://odoo.pigsty.cc, username: test@pigsty.cc, password: pigsty
The default credentials are
admin:admin
Get Started
First, follow the standard pigsty single (or multiple if you want) node installation, using the conf/app/odoo config template.
curl -fsSL https://repo.pigsty.io/pig | bash
pig sty init # init pigsty directory
pig sty boot # prepare local repo & ansible
pig sty conf -c app/odoo # use the odoo 1-node config template
pig sty install # begin installation
Then install docker and launch odoo app:
./docker.yml # install & configure docker & docker-compose
./app.yml # install and launch odoo with docker-compose
That's it, YOU ARE ALL SET! Odoo is serving on port 8069 by default, you can access it via http://<ip>:8069.
You can add a static entry to your /etc/hosts file to access odoo via http://odoo.pigsty through the nginx 80/443 portal
To create another odoo database, you'll have to alter the
odoodb user to superuser to do so.
Configuration
There's a config template conf/app/odoo, you'd better change some credentials and make your modifications there:
all:
children:
# the odoo application (default username & password: admin/admin)
odoo:
hosts: { 10.10.10.10: {} }
vars:
app: odoo # specify app name to be installed (in the apps)
apps: # define all applications
odoo: # app name, should have corresponding ~/app/odoo folder
file: # optional directory to be created
- { path: /data/odoo ,state: directory, owner: 100, group: 101 }
- { path: /data/odoo/webdata ,state: directory, owner: 100, group: 101 }
- { path: /data/odoo/addons ,state: directory, owner: 100, group: 101 }
conf: # override /opt/<app>/.env config file
PG_HOST: 10.10.10.10 # postgres host
PG_PORT: 5432 # postgres port
PG_USERNAME: odoo # postgres user
PG_PASSWORD: DBUser.Odoo # postgres password
ODOO_PORT: 8069 # odoo app port
ODOO_DATA: /data/odoo/webdata # odoo webdata
ODOO_ADDONS: /data/odoo/addons # odoo plugins
ODOO_DBNAME: odoo # odoo database name
ODOO_VERSION: 19.0 # odoo image version
# the odoo database
pg-odoo:
hosts: { 10.10.10.10: { pg_seq: 1, pg_role: primary } }
vars:
pg_cluster: pg-odoo
pg_users:
- { name: odoo ,password: DBUser.Odoo ,pgbouncer: true ,roles: [ dbrole_admin ] ,createdb: true ,comment: admin user for odoo service }
- { name: odoo_ro ,password: DBUser.Odoo ,pgbouncer: true ,roles: [ dbrole_readonly ] ,comment: read only user for odoo service }
- { name: odoo_rw ,password: DBUser.Odoo ,pgbouncer: true ,roles: [ dbrole_readwrite ] ,comment: read write user for odoo service }
pg_databases:
- { name: odoo ,owner: odoo ,revokeconn: true ,comment: odoo main database }
pg_hba_rules:
- { user: all ,db: all ,addr: 172.17.0.0/16 ,auth: pwd ,title: 'allow access from local docker network' }
- { user: dbuser_view , db: all ,addr: infra ,auth: pwd ,title: 'allow grafana dashboard access cmdb from infra nodes' }
Odoo Addons
There are lots of Odoo modules available in the community, you can install them by downloading and placing them in the addons folder (/data/odoo/addons by default).
mkdir -p /data/odoo/addons; chown 100:101 /data/odoo/addons
To enable addon module, first entering the Developer mode
Settings -> Generic Settings -> Developer Tools -> Activate the developer Mode
Then goes to the > Apps -> Update Apps List, then you can find the extra addons and install from the panel.
Frequently used free addons: Accounting Kit