{"id":17570,"date":"2019-04-15T10:56:26","date_gmt":"2019-04-15T10:56:26","guid":{"rendered":"http:\/\/tenthplanet.in\/odoo\/?p=17570"},"modified":"2026-07-07T07:08:45","modified_gmt":"2026-07-07T07:08:45","slug":"install-odoo","status":"publish","type":"post","link":"https:\/\/tenthplanet.in\/odoo\/product\/install-odoo\/","title":{"rendered":"Odoo Installation"},"content":{"rendered":"<p><\/p>\n<h4>Online<\/h4>\n<p><strong>Demo :<\/strong><br>To simply get a quick idea of Odoo, demo instances are available. They have shared instances that only live for a few hours, and can be used to browse around and try things out with no commitment.<\/p>\n<p><strong>SaaS :<\/strong><\/p>\n<p>Odoo\u2019s SaaS provides private instances and starts out free. It&#8217;s Fully managed and migrated by Odoo S.A.,<br>It can be used to discover and test Odoo and do non-code customizations (i.e. incompatible with custom modules or the Odoo Apps Store) without having to install it locally. Like demo instances, SaaS instances require no local installation, a web browser is sufficient.<\/p>\n<h4>Packaged installers<\/h4>\n<p>Odoo provides packaged installers for Windows, deb-based distributions (Debian, Ubuntu,) and RPM-based distributions (Fedora, CentOS, RHEL, ) for both the Community and Enterprise versions. These packages automatically set up all dependencies (for the Community version), but maybe difficult to keep up-to-date.<\/p>\n<p>Official Community packages with all relevant dependency requirements are available on our nightly server. Both Community and Enterprise packages can be downloaded from our Download page (you must be logged in as a paying customer or partner to download the Enterprise packages).<\/p>\n<h4>Source Install<\/h4>\n<p>The source \u201cinstallation\u201d really is about not installing Odoo and running it directly from the source instead.<br>This can be more convenient for module developers as the Odoo source is more easily accessible than using the packaged installation.<\/p>\n<p>It also makes starting and stopping Odoo more flexible and explicit than the services set up by the packaged installations, and allows overriding settings using command-line parameters without needing to edit a configuration file. Finally, it provides greater control over the system\u2019s set up and allows more easily keeping (and running) multiple versions of Odoo side-by-side.<\/p>\n<h4>Docker<\/h4>\n<p>If you usually use&nbsp;docker&nbsp;for development or deployment, an official&nbsp;docker&nbsp;base image is available.<\/p>\n<h4>Below procedure to be followed to install Odoo 12.0 with Ubuntu 16.04<\/h4>\n<p><strong>Step 1: Update the server<\/strong><\/p>\n<p>Please use these commands to make sure your system is up-to-date<\/p>\n<pre>sudo apt-get update\nsudo apt-get upgrade<\/pre>\n<p><strong>Step 2: Secure Server<\/strong><\/p>\n<p>It is common for all versions and many of you may be aware of this, but I&#8217;m still including this.<br>Run this command to make your server\/system remotely accessible<\/p>\n<pre>sudo apt-get install openssh-server fail2ban<\/pre>\n<p><strong>Step 3: Create a System User<\/strong><\/p>\n<p>Create a system user to run Odoo service. The source code of Odoo will reside in the home directory of the user,&nbsp; if you follow these steps<\/p>\n<pre>sudo adduser --system --home=\/opt\/odoo --group odoo<\/pre>\n<p><strong>Step 4: Install&nbsp;and Configure PostgreSQL database server<\/strong><\/p>\n<pre>Install PostgreSQL:\nsudo apt-get install postgresql\nsudo su - postgres<\/pre>\n<p>Create a PostgreSQL user for managing Odoo databases:<\/p>\n<pre>createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt odoo12<\/pre>\n<p>Exit from Postgres user to continue the installation:<\/p>\n<pre>exit<\/pre>\n<p><strong>Step 5: Install&nbsp; dependencies for Odoo<\/strong><\/p>\n<pre>Install pip 3:\nsudo apt-get install -y python3-pip<\/pre>\n<p>After the successful installation of pip3, install dependencies using pip3:<\/p>\n<pre>sudo pip3 install Babel chardet decorator docutils ebaysdk feedparser gevent greenlet html2text Jinja2 libsass lxml Mako MarkupSafe mock num2words ofxparse passlib Pillow psutil psycopg2 pydot pyldap pyparsing PyPDF2 pyserial python-dateutil pytz pyusb PyYAML qrcode reportlab requests suds-jurko vatnumber vobject Werkzeug XlsxWriter xlwt xlrd<\/pre>\n<p>There are some web dependencies for Odoo like Node.js and less<\/p>\n<p>Install these web dependencies:<\/p>\n<pre>sudo apt-get install -y npm\nsudo ln -s \/usr\/bin\/nodejs \/usr\/bin\/node\nsudo npm install -g less less-plugin-clean-css\nsudo apt-get install -y node-less<\/pre>\n<p>wkhtmltopdf is required to generate PDF reports from Odoo. Install on your server.<\/p>\n<p>Get the most compatible version of wkhtmltopdf is 0.12.1 by running below command<\/p>\n<pre>sudo wget http:\/\/download.gna.org\/wkhtmltopdf\/0.12\/0.12.1\/wkhtmltox-0.12.1_linux-trusty-amd64.deb<\/pre>\n<p>Or from here,<\/p>\n<pre>sudo wget https:\/\/github.com\/wkhtmltopdf\/wkhtmltopdf\/releases\/download\/0.12.1\/wkhtmltox-0.12.1_linux-trusty-amd64.deb<\/pre>\n<p>These two commands will trigger the downloading of the package<br>If these both ains websites or Clone from Github repo<br>Here we are cloning from Git.<\/p>\n<p>So, first, we have to install Git<\/p>\n<pre>sudo apt-get install git<\/pre>\n<p>Now, we should change our user as the system user we created for Odoo. Otherwise, we will end up with access right related hurdles.<\/p>\n<pre>sudo su - odoo -s \/bin\/bash<\/pre>\n<p>Now we are ready to clone Odoo 12 (this is a community only)<\/p>\n<pre>git clone https:\/\/www.github.com\/odoo\/odoo --depth 1 --branch 12.0 --single-branch<\/pre>\n<p>Exit from Odoo user to continue the installation:<\/p>\n<pre>exit<\/pre>\n<p><strong>Step 7 :&nbsp; Configure Odoo<\/strong><\/p>\n<p>At first, we are creating a log file location for Odoo. Odoo will create and maintain its log files there.<\/p>\n<pre>sudo mkdir \/var\/log\/odoo<\/pre>\n<p>Give the full access to this directory to the Odoo user<\/p>\n<pre>sudo chown odoo:root \/var\/log\/odoo<\/pre>\n<p>After creating a log directory, we are going to create a configuration file for Odoo.<\/p>\n<p>There is a configuration file that comes with the Odoo we just downloaded.<\/p>\n<p>We are copying that file to a more appropriate location<\/p>\n<pre>sudo cp \/opt\/odoo\/debian\/odoo.conf \/etc\/odoo.conf<\/pre>\n<p>We have to make some changes in the configuration file, to edit the file, we are using a text editor called nano<\/p>\n<pre>sudo nano \/etc\/odoo.conf<\/pre>\n<p>Here is the example of the configuration file:<\/p>\n<pre>[options]\n; This is the password that allows database operations:\n; admin_passwd = admin\ndb_host = False\ndb_port = False\ndb_user = odoo\ndb_password = False\naddons_path = \/opt\/odoo\/addons\nlogfile = \/var\/log\/odoo\/odoo.log<\/pre>\n<p>After the configuration file is ready, we have to give the ownership of the file to the Odoo user<\/p>\n<pre>sudo chown odoo: \/etc\/odoo.conf\nsudo chmod 640 \/etc\/odoo.conf<\/pre>\n<p><strong>Step 8: Create a service to run Odoo<\/strong><\/p>\n<p>We have to create a system unit for Odoo so that it can start behaving like a service.<\/p>\n<p>Create a new file odoo.service at \/etc\/systemd\/system\/ just like we created the file<br>sudo nano \/etc\/systemd\/system\/odoo.service<\/p>\n<p>You can use this content for your file<\/p>\n<pre>[Unit]\nDescription=Odoo\nDocumentation=http:\/\/www.odoo.com\n[Service]\n# Ubuntu\/Debian convention:\nType=simple\nUser=odoo12\nExecStart=\/opt\/odoo\/odoo-bin -c \/etc\/odoo.conf\n[Install]\nWantedBy=default.target<\/pre>\n<p>Since this is a service, we are giving full rights to this file to the root user.<\/p>\n<pre>sudo chmod 755 \/etc\/systemd\/system\/odoo.service\nsudo chown root: \/etc\/systemd\/system\/odoo.service<\/pre>\n<p><strong>Step 9: Test Odoo<\/strong><\/p>\n<pre>sudo systemctl start odoo.service<\/pre>\n<p>You can check the log file of Odoo<\/p>\n<pre>sudo tail -f \/var\/log\/odoo\/odoo.log<\/pre>\n<p><strong>Step 10: Automating Starting of Odoo<\/strong><\/p>\n<p>This will enable the Odoo service to start automatically at boot time<\/p>\n<pre>sudo systemctl enable odoo.service<\/pre>\n<p><strong>Step 11: Access Odoo<\/strong><\/p>\n<p>Open a new browser window and enter&nbsp;HTTP:\/\/<strong>&lt;your_domain_or_IP_address&gt;:8069<\/strong>&nbsp;in the address bar<\/p>\n<p>If everything is working properly, you will redirect to Odoo&#8217;s database creation page.<\/p>\n\n<div id=\"rank-math-howto\" class=\"rank-math-block\">\n<div class=\"rank-math-howto-description\">\n\n<p>Below procedure to be followed to install Odoo 12.0 with Ubuntu 16.04<\/p>\n\n<\/div>\n\n<div class=\"rank-math-steps \">\n<div id=\"howto-step-5f3a3899eed46\" class=\"rank-math-step\">\n<h3 class=\"rank-math-step-title \">Step 1: Update the server<br \/> <\/h3>\n<div class=\"rank-math-step-content \"><\/div>\n<\/div>\n<div id=\"howto-step-5f3a3899eed49\" class=\"rank-math-step\">\n<h3 class=\"rank-math-step-title \">Step 2: Secure Server<br \/> <\/h3>\n<div class=\"rank-math-step-content \"><\/div>\n<\/div>\n<div id=\"howto-step-5f3a3899eed4a\" class=\"rank-math-step\">\n<h3 class=\"rank-math-step-title \">Step 3: Create a System User<br \/>   <\/h3>\n<div class=\"rank-math-step-content \"><\/div>\n<\/div>\n<div id=\"howto-step-5f3a3899eed4b\" class=\"rank-math-step\">\n<h3 class=\"rank-math-step-title \">Step 4: Install and Configure PostgreSQL database server<br \/>   <\/h3>\n<div class=\"rank-math-step-content \"><\/div>\n<\/div>\n<div id=\"howto-step-5f3a3899eed4c\" class=\"rank-math-step\">\n<h3 class=\"rank-math-step-title \">Step 5: Install  dependencies for Odoo<br \/>     <\/h3>\n<div class=\"rank-math-step-content \"><\/div>\n<\/div>\n<div id=\"howto-step-5f3a3899eed4d\" class=\"rank-math-step\">\n<h3 class=\"rank-math-step-title \">Step 6 :  Configure Odoo<br \/>      <\/h3>\n<div class=\"rank-math-step-content \"><\/div>\n<\/div>\n<div id=\"howto-step-5f3a3899eed4e\" class=\"rank-math-step\">\n<h3 class=\"rank-math-step-title \">Step 7: Create a service to run Odoo<br \/>      <\/h3>\n<div class=\"rank-math-step-content \"><\/div>\n<\/div>\n<div id=\"howto-step-5f3a3899eed4f\" class=\"rank-math-step\">\n<h3 class=\"rank-math-step-title \">Step 8: Test Odoo<br \/>        <\/h3>\n<div class=\"rank-math-step-content \"><\/div>\n<\/div>\n<div id=\"howto-step-5f3a3899eed50\" class=\"rank-math-step\">\n<h3 class=\"rank-math-step-title \">Step 9: Automating Starting of Odoo<br \/>        <\/h3>\n<div class=\"rank-math-step-content \"><\/div>\n<\/div>\n<div id=\"howto-step-5f3a3899eed51\" class=\"rank-math-step\">\n<h3 class=\"rank-math-step-title \">Step 10: Access Odoo<\/h3>\n<div class=\"rank-math-step-content \"><\/div>\n<\/div>\n<\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>There are multiple ways to install Odoo, or not install it at all, depending on the intended use case.<br \/>\nThe following is the list of Options to install Odoo.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[9,344],"tags":[77,78,79],"class_list":["post-17570","post","type-post","status-publish","format-standard","hentry","category-product","category-odoo-product","tag-install-odoo","tag-odoo-setup","tag-steps-to-install-odoo"],"acf":[],"_links":{"self":[{"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/posts\/17570","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/comments?post=17570"}],"version-history":[{"count":1,"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/posts\/17570\/revisions"}],"predecessor-version":[{"id":37828,"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/posts\/17570\/revisions\/37828"}],"wp:attachment":[{"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/media?parent=17570"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/categories?post=17570"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/tags?post=17570"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}