{"id":19904,"date":"2025-04-22T08:37:29","date_gmt":"2025-04-22T08:37:29","guid":{"rendered":"https:\/\/cloudkul.com\/blog\/?p=19904"},"modified":"2025-05-09T10:52:00","modified_gmt":"2025-05-09T10:52:00","slug":"how-to-setup-odoo-18-on-aws","status":"publish","type":"post","link":"https:\/\/cloudkul.com\/blog\/how-to-setup-odoo-18-on-aws\/","title":{"rendered":"How to setup Odoo 18 on AWS"},"content":{"rendered":"\n<p>In our previous blog, we covered setting up <a href=\"https:\/\/cloudkul.com\/blog\/how-to-setup-odoo-17-on-aws\/\" target=\"_blank\" rel=\"noreferrer noopener\">Odoo 17<\/a> on AWS. Now, let&#8217;s move forward and explore how to set up Odoo 18 on an AWS cloud server.<\/p>\n\n\n\n<p><strong>Prerequisites<\/strong><\/p>\n\n\n\n<p><strong>Python<\/strong> <strong>version:<\/strong> &gt;= 3.10<br><strong>Resources<\/strong>: 2-core CPU &amp; 4GB of RAM<br><strong>Access<\/strong>: SSH connection to the server<br><strong>Permissions<\/strong>: a user with &#8216;sudo&#8217; privileges<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Steps to set up Odoo 18 on the AWS server<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 1: Update The Apt Source List<\/strong><\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo -i\napt-get update &amp;&amp; apt-get upgrade -y<\/pre>\n\n\n\n<p><strong>apt-get update: <\/strong>Updates the list of available packages and their versions from the repositories.<\/p>\n\n\n\n<p><strong>apt-get upgrade -y: Upgrade all installed packages to their latest versions<\/strong> without requiring manual confirmation.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"413\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-1024x413.png\" alt=\"image\" class=\"wp-image-19906\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 2: Install The Required Python Libraries<\/strong><\/h3>\n\n\n\n<p>Let\u2019s install further Python libraries \u2013<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt-get install git python3-pip build-essential wget libpq-dev libsasl2-dev libldap2-dev -y<\/pre>\n\n\n\n<p><strong>These tools are required to \u2013<\/strong><\/p>\n\n\n\n<ul>\n<li><strong>git:&nbsp;<\/strong>Version control system for cloning repositories.<\/li>\n\n\n\n<li><strong>python3-pip:&nbsp;<\/strong>Python package installer for Python 3.<\/li>\n\n\n\n<li><strong>build-essential:<\/strong>&nbsp;Includes necessary tools for building software (like gcc, make).<\/li>\n\n\n\n<li><strong>wget:<\/strong>&nbsp;Utility for downloading files from the web.<\/li>\n\n\n\n<li><strong>libpq-dev:<\/strong>&nbsp;Development files for PostgreSQL.<\/li>\n\n\n\n<li><strong>libsasl2-dev:&nbsp;<\/strong>Development files for SASL (Simple Authentication and Security Layer).<\/li>\n\n\n\n<li><strong>libldap2-dev:&nbsp;<\/strong>Development files for LDAP (Lightweight Directory Access Protocol).<\/li>\n\n\n\n<li><strong>-y:&nbsp;<\/strong>Automatically answers \u201cyes\u201d to prompts.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"432\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-1-1024x432.png\" alt=\"image-1\" class=\"wp-image-19908\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 3: Create A User To Run The Odoo Application<\/strong><\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo useradd -m -d \/opt\/odoo18 -U -r odoo18<\/pre>\n\n\n\n<p><strong>Note:&nbsp;<\/strong>However, You can create your own version-specific user.<\/p>\n\n\n\n<ul>\n<li><strong>useradd:&nbsp;<\/strong>will create a new user account.<\/li>\n\n\n\n<li><strong>-m:&nbsp;<\/strong>Creates a home directory for the user.<\/li>\n\n\n\n<li><strong>-d \/opt\/odoo18:<\/strong>&nbsp;Specifies the user\u2019s home directory.<\/li>\n\n\n\n<li><strong>-U:<\/strong>&nbsp;Creates a user group with the same name.<\/li>\n\n\n\n<li><strong>-r:&nbsp;<\/strong>Creates a system account (not a regular user).<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/Screenshot-from-2025-04-11-12-40-07.png\"><img loading=\"lazy\" decoding=\"async\" width=\"820\" height=\"109\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/Screenshot-from-2025-04-11-12-40-07.png\" alt=\"Screenshot-from-2025-04-11-12-40-07\" class=\"wp-image-19910\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading has-medium-font-size\"><code class=\"western\" style=\"font-size: medium;color: initial;, monospace\"><font color=\"#000000\"><font face=\"Liberation Serif, serif\"><font style=\"font-size: 14pt\"><b>Step 4: <\/b><\/font><\/font><\/font><span><font face=\"Liberation Serif, serif\"><font style=\"font-size: 14pt\"><font style=\"font-size: 14pt\"><b>Install &amp; Configure The PostgreSQL Database Server<\/b><\/font><\/font><\/font><\/span><\/code><\/h3>\n\n\n\n<p>A database can be served from the local database server as well as through the AWS RDS.<\/p>\n\n\n\n<p><strong>Case 1:&nbsp;<\/strong>If you are using Local Database Server (PostgreSQL)<\/p>\n\n\n\n<p>Use this command to install the PostgreSQL server \u2013<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt install postgresql -y<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"397\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-2-1024x397.png\" alt=\"image-2\" class=\"wp-image-19912\" \/><\/a><\/figure>\n\n\n\n<p>After installing the PostgreSQL, We will set up a new PostgreSQL user to do the interactions with the database from the odoo application.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">odoo_username=odoo18\nsu - postgres -c \"psql -U postgres -c \\\"CREATE ROLE $odoo_username WITH NOCREATEROLE NOSUPERUSER CREATEDB LOGIN;\\\"\"\nsu - postgres -c \"psql -U postgres -c \\\"ALTER ROLE $odoo_username WITH PASSWORD 'odoo';\\\"\"\nsu - postgres -c \"psql -U postgres -c \\\"ALTER USER $odoo_username WITH SUPERUSER;\\\"\"<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-4.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"200\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-4-1024x200.png\" alt=\"image-4\" class=\"wp-image-19914\" \/><\/a><\/figure>\n\n\n\n<p><strong>Case 2: <code>If you are using AWS RDS<\/code><\/strong><\/p>\n\n\n\n<p>To connect to an RDS PostgreSQL instance from an Ubuntu server and create a user, you can follow these steps:<\/p>\n\n\n\n<p>Install the PostgreSQL client on your Ubuntu server if it\u2019s not already installed:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt install postgresql-client -y<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-6.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"624\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-6-1024x624.png\" alt=\"image-6\" class=\"wp-image-19917\" style=\"width:824px;height:auto\" \/><\/a><\/figure>\n\n\n\n<p>Now, you can connect to your RDS and run the following command.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">psql -p 5432 -h your-rds-endpoint -U username<\/pre>\n\n\n\n<ul>\n<li><strong>psql:&nbsp;<\/strong>PostgreSQL interactive terminal.<\/li>\n\n\n\n<li><strong>-p 5432:&nbsp;<\/strong>Specifies the port number (default PostgreSQL port).<\/li>\n\n\n\n<li><strong>-h your-rds-endpoint:&nbsp;<\/strong>Specifies the RDS endpoint.<\/li>\n\n\n\n<li><strong>-U username:<\/strong>&nbsp;Specifies the username to connect with.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/Web_Photo_Editor-jpg.webp\"><img data-dominant-color=\"341029\" data-has-transparency=\"false\" style=\"--dominant-color: #341029;\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"290\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/Web_Photo_Editor-1024x290.webp\" alt=\"Web_Photo_Editor\" class=\"not-transparent wp-image-19919\" \/><\/a><\/figure>\n\n\n\n<p>Now you can CREATE ROLE odoo18 WITH LOGIN PASSWORD \u2018$ecretp@$$\u2019;<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">CREATE ROLE odoo18 WITH LOGIN PASSWORD \u2018$ecretp@$$\u2019;<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/Screenshot-from-2025-04-09-15-13-40.png\"><img loading=\"lazy\" decoding=\"async\" width=\"889\" height=\"121\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/Screenshot-from-2025-04-09-15-13-40.png\" alt=\"Screenshot-from-2025-04-09-15-13-40\" class=\"wp-image-19921\" \/><\/a><\/figure>\n\n\n\n<p>Grants the ability to create new databases &#8216; ALTER ROLE odoo18 WITH CREATEDB; &#8216;<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">ALTER ROLE odoo18 WITH CREATEDB; <\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/05\/Screenshot-from-2025-05-09-12-23-12-2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1022\" height=\"70\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/05\/Screenshot-from-2025-05-09-12-23-12-2.png\" alt=\"Screenshot-from-2025-05-09-12-23-12-2\" class=\"wp-image-19986\" \/><\/a><\/figure>\n\n\n\n<p>Grant all practical privileges your <code>odoo18<\/code> &#8216; GRANT rds_superuser TO odoo18; &#8216;<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">GRANT rds_superuser TO odoo18;<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/05\/Screenshot-from-2025-05-09-12-22-30-2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"67\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/05\/Screenshot-from-2025-05-09-12-22-30-2-1024x67.png\" alt=\"Screenshot-from-2025-05-09-12-22-30-2\" class=\"wp-image-19987\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><code><strong>Step 5: Installing Wkhtmltopdf<\/strong><\/code><\/h3>\n\n\n\n<p><strong>Wkhtmltopdf<\/strong> is used to generate PDFs from HTML, making it ideal for creating reports, invoices, or any other documents that need to be printed or archived in PDF format.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">apt install wkhtmltopdf -y<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-9.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"391\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-9-1024x391.png\" alt=\"image-9\" class=\"wp-image-19923\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 6: Clone The latest Code From Github After Switching To The Odoo18 User<\/strong><\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">su - odoo18 -s \/bin\/bash<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/Screenshot-from-2025-04-11-17-47-20.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"140\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/Screenshot-from-2025-04-11-17-47-20-1024x140.png\" alt=\"Screenshot-from-2025-04-11-17-47-20\" class=\"wp-image-19966\" \/><\/a><\/figure>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">git clone https:\/\/www.github.com\/odoo\/odoo --depth 1 --branch 18.0 \/opt\/odoo18\/odoo18<\/pre>\n\n\n\n<ul>\n<li><strong>sudo su \u2013&nbsp;<\/strong>odoo18  Switches to the odoo18<\/li>\n\n\n\n<li><strong>git clone:<\/strong>&nbsp;Clones a repository.<\/li>\n\n\n\n<li><strong>\u2013depth 1:&nbsp;<\/strong>Fetches only the latest snapshot of the repository.<\/li>\n\n\n\n<li><strong>\u2013branch 18.0:&nbsp;<\/strong>Specifies the branch to clone.<\/li>\n\n\n\n<li><strong>\/opt\/odoo18\/odoo18:<\/strong>&nbsp;Directory where the repository will be cloned.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-11.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"309\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-11-1024x309.png\" alt=\"image-11\" class=\"wp-image-19925\" \/><\/a><\/figure>\n\n\n\n<p>Once the latest code is cloned on your server, you can exit from the odoo18 user and be the root user to run further commands.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 7: Install Required Web Dependencies For The Odoo<\/strong><\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt install -y npm\nsudo apt install -y node-less\nsudo npm install -g less less-plugin-clean-css<\/pre>\n\n\n\n<ul>\n<li><strong>npm:&nbsp;<\/strong>Node.js is a package manager.<\/li>\n\n\n\n<li><strong>node-less:<\/strong>&nbsp;LESS (Leaner Style Sheets) compiler for Node.js.<\/li>\n\n\n\n<li><strong>-g:<\/strong>&nbsp;Installs packages globally.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-12.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"358\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-12-1024x358.png\" alt=\"image-12\" class=\"wp-image-19926\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 8: Install Required Python 3 Dependencies For Odoo<\/strong><\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">cd \/opt\/odoo18\/odoo18<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-13.png\"><img loading=\"lazy\" decoding=\"async\" width=\"760\" height=\"86\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-13.png\" alt=\"image-13\" class=\"wp-image-19927\" \/><\/a><\/figure>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sed -i.bak '\/gevent==\/s\/^\/#\/' \/opt\/odoo18\/odoo18\/requirements.txt\nsed -i '\/gevent==24.2.1\/a gevent' \/opt\/odoo18\/odoo18\/requirements.txt<\/pre>\n\n\n\n<p><br>To update the requirements.txt file, use these two <code>sed<\/code> commands.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-14.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"209\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-14-1024x209.png\" alt=\"image-14\" class=\"wp-image-19929\" \/><\/a><\/figure>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">pip3 install -r requirements.txt<\/pre>\n\n\n\n<p><strong>pip3 install -r requirements.txt:&nbsp;<\/strong>Installs Python dependencies listed in requirements.txt.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-15.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"410\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-15-1024x410.png\" alt=\"image-15\" class=\"wp-image-19931\" \/><\/a><\/figure>\n\n\n\n<p>if you face cffi issue because of version incompatibility.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-16.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"328\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-16-1024x328.png\" alt=\"image-16\" class=\"wp-image-19932\" \/><\/a><\/figure>\n\n\n\n<p>Run the below command.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">pip3 install --upgrade pip<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-17.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"232\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-17-1024x232.png\" alt=\"image-17\" class=\"wp-image-19933\" \/><\/a><\/figure>\n\n\n\n<p>Next, run the requirements.txt file again.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-18.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"329\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-18-1024x329.png\" alt=\"image-18\" class=\"wp-image-19934\" \/><\/a><\/figure>\n\n\n\n<p>As a result, the cffi package issue has now been fixed.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 9: Make A Directory To Keep Track Of Odoo Logs<\/strong><\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo mkdir \/var\/log\/odoo<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-19.png\"><img loading=\"lazy\" decoding=\"async\" width=\"908\" height=\"96\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-19.png\" alt=\"image-19\" class=\"wp-image-19935\" \/><\/a><\/figure>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo chown odoo18:root \/var\/log\/odoo<\/pre>\n\n\n\n<p><strong>mkdir: <\/strong>Creates a new directory to keep track of odoo logs.<br><strong>Chown: <\/strong>Changes file owner to odoo and group to root.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-21.png\"><img loading=\"lazy\" decoding=\"async\" width=\"849\" height=\"188\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-21.png\" alt=\"image-21\" class=\"wp-image-19938\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 10: Create A Configuration File For The Odoo<\/strong><\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo nano \/etc\/odoo-server.conf<\/pre>\n\n\n\n<p>Sample configuration file.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">[options];This is the password that allows database operations:\n; admin_passwd = admin\ndb_host = localhost #If using RDS then define your rdsendpoint\ndb_port = False\ndb_user = odoo18\ndb_password = False #add your own password\naddons_path = \/opt\/odoo18\/odoo18\/addons\nlogfile = \/var\/log\/odoo\/odoo-server.log\nproxy_mode = True<\/pre>\n\n\n\n<p>Further, Set the ownership and permission to the file.<\/p>\n\n\n\n<ul>\n<li><strong>admin_passwd<\/strong>: Sets the administrator password.<\/li>\n\n\n\n<li><strong>db_host<\/strong>: Database host (set to RDS endpoint if using RDS).<\/li>\n\n\n\n<li><strong>db_port<\/strong>: Database port.<\/li>\n\n\n\n<li><strong>db_user<\/strong>: Database user.<\/li>\n\n\n\n<li><strong>db_password<\/strong>: Database user password.<\/li>\n\n\n\n<li><strong>addons_path<\/strong>: Path to Odoo add-ons.(We use webkul addons here)<\/li>\n\n\n\n<li><strong>logfile<\/strong>: Path to the log file.<\/li>\n\n\n\n<li><strong>proxy_mode<\/strong>: Enables proxy mode.<\/li>\n<\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">chown odoo18: \/etc\/odoo-server.conf\nchmod 640 \/etc\/odoo-server.conf<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-22.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"193\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-22-1024x193.png\" alt=\"image-22\" class=\"wp-image-19940\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 11: Now Create An Odoo Boot Script<\/strong><\/h3>\n\n\n\n<p>First, create a systemd service file to manage the Odoo 18 service. Then, set up a systemd unit file to handle starting, stopping, and restarting the Odoo installation.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">nano \/etc\/systemd\/system\/odoo18.service<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-23.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"357\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-23-1024x357.png\" alt=\"image-23\" class=\"wp-image-19941\" \/><\/a><\/figure>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">[Unit]\nDescription=odoo18\nRequires=postgresql.service\nAfter=network.target postgresql.service\n[Service]\nType=simple\nSyslogIdentifier=odoo18\nPermissionsStartOnly=true\nUser=odoo18\nGroup=odoo18\nExecStart=\/usr\/bin\/python3 \/opt\/odoo18\/odoo18\/odoo-bin -c \/etc\/odoo-server.conf\nStandardOutput=journal+console\n[Install]\nWantedBy=multi-user.target<\/pre>\n\n\n\n<p>Note: Copy the script to your server and update the daemon path. After saving and exiting, reload the systemd service and run Odoo. If using RDS, comment out the Requires and After lines.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">systemctl daemon-reload\nsystemctl enable --now odoo18<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-24.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"170\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-24-1024x170.png\" alt=\"image-24\" class=\"wp-image-19943\" \/><\/a><\/figure>\n\n\n\n<p>To check if Odoo is starting, simply run the following command:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">systemctl status odoo18<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-25.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1002\" height=\"320\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-25.png\" alt=\"image-25\" class=\"wp-image-19944\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 12: Monitor Odoo Service<\/strong><\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">tail -f \/var\/log\/odoo\/odoo-server.log<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-26.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"383\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-26-1024x383.png\" alt=\"image-26\" class=\"wp-image-19945\" \/><\/a><\/figure>\n\n\n\n<p>Next, open your favorite web browser and navigate to <code>http:\/\/YOUR_SERVER_IP_ADDRESS:8069<\/code>. Once there, you will see the default Odoo page.<\/p>\n\n\n\n<p><strong>Note \u2013&nbsp;<\/strong>Do open the 8069 port from the AWS console in the Security group.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-27.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"553\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-27-1024x553.png\" alt=\"image-27\" class=\"wp-image-19946\" \/><\/a><\/figure>\n\n\n\n<p>If you want to configure your Odoo application with Nginx, then you can refer to the <a href=\"https:\/\/cloudkul.com\/blog\/how-to-set-up-the-nginx-server-for-the-odoo-application\/\" target=\"_blank\" rel=\"noreferrer noopener\"><u>Blog<\/u><\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Need Support?<\/h2>\n\n\n\n<p>Thank You for reading this Blog!<\/p>\n\n\n\n<p>For further more interesting blogs, keep in touch with us. If you need any kind of support, simply raise a ticket at&nbsp;<a href=\"https:\/\/store.webkul.com\/OpenCart-Modules.html\" target=\"_blank\" rel=\"noreferrer noopener\"><u><strong>https:\/\/webkul.uvdesk.com\/en\/<\/strong><\/u><\/a><strong>.<\/strong>&nbsp;Also, visit our useful&nbsp;<a href=\"https:\/\/store.webkul.com\/OpenCart-Modules.html\" target=\"_blank\" rel=\"noreferrer noopener\"><u><strong>OpenCart modules<\/strong><\/u><\/a>.<\/p>\n\n\n\n<p><strong>For further help or queries, please&nbsp;<a href=\"https:\/\/cloudkul.com\/contact\/\" target=\"_blank\" rel=\"noreferrer noopener\">contact<\/a>&nbsp;us or raise a&nbsp;<a href=\"https:\/\/webkul.uvdesk.com\/en\/customer\/create-ticket\/\" target=\"_blank\" rel=\"noreferrer noopener\">ticket<\/a>.<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In our previous blog, we covered setting up Odoo 17 on AWS. Now, let&#8217;s move <a class=\"text-primary\" title=\"read more\" href=\"https:\/\/cloudkul.com\/blog\/how-to-setup-odoo-18-on-aws\/\">[&#8230;]<\/a><\/p>\n","protected":false},"author":59,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_mi_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[1],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to setup Odoo 18 on AWS<\/title>\n<meta name=\"description\" content=\"Odoo 18 is officially rolled out and has already created a buzz among the users. You can visit GitHub to find the Source Code.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cloudkul.com\/blog\/how-to-setup-odoo-18-on-aws\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to setup Odoo 18 on AWS\" \/>\n<meta property=\"og:description\" content=\"Odoo 18 is officially rolled out and has already created a buzz among the users. You can visit GitHub to find the Source Code.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cloudkul.com\/blog\/how-to-setup-odoo-18-on-aws\/\" \/>\n<meta property=\"og:site_name\" content=\"Cloudkul\" \/>\n<meta property=\"article:published_time\" content=\"2025-04-22T08:37:29+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-05-09T10:52:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-1024x413.png\" \/>\n<meta name=\"author\" content=\"Rajat singh sajwan\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cloudkul.com\/blog\/how-to-setup-odoo-18-on-aws\/\",\"url\":\"https:\/\/cloudkul.com\/blog\/how-to-setup-odoo-18-on-aws\/\",\"name\":\"How to setup Odoo 18 on AWS\",\"isPartOf\":{\"@id\":\"https:\/\/cloudkul.com\/blog\/#website\"},\"datePublished\":\"2025-04-22T08:37:29+00:00\",\"dateModified\":\"2025-05-09T10:52:00+00:00\",\"author\":{\"@id\":\"https:\/\/cloudkul.com\/blog\/#\/schema\/person\/657de05381e7f905c55e030cc0eb7eb3\"},\"description\":\"Odoo 18 is officially rolled out and has already created a buzz among the users. You can visit GitHub to find the Source Code.\",\"breadcrumb\":{\"@id\":\"https:\/\/cloudkul.com\/blog\/how-to-setup-odoo-18-on-aws\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cloudkul.com\/blog\/how-to-setup-odoo-18-on-aws\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cloudkul.com\/blog\/how-to-setup-odoo-18-on-aws\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/cloudkul.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to setup Odoo 18 on AWS\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/cloudkul.com\/blog\/#website\",\"url\":\"https:\/\/cloudkul.com\/blog\/\",\"name\":\"Cloudkul\",\"description\":\"Host your eCommerce Store on AWS with Optimized Performance\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/cloudkul.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/cloudkul.com\/blog\/#\/schema\/person\/657de05381e7f905c55e030cc0eb7eb3\",\"name\":\"Rajat singh sajwan\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudkul.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/206d9c43eae9025169b733cea458e0d0?s=96&d=https%3A%2F%2Fs.gravatar.com%2Favatar%2F6148c37469011bc2f8e491ca8f5de495%3Fs%3D80&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/206d9c43eae9025169b733cea458e0d0?s=96&d=https%3A%2F%2Fs.gravatar.com%2Favatar%2F6148c37469011bc2f8e491ca8f5de495%3Fs%3D80&r=g\",\"caption\":\"Rajat singh sajwan\"},\"url\":\"https:\/\/cloudkul.com\/blog\/author\/rajatsinghsajwan-ck789\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to setup Odoo 18 on AWS","description":"Odoo 18 is officially rolled out and has already created a buzz among the users. You can visit GitHub to find the Source Code.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/cloudkul.com\/blog\/how-to-setup-odoo-18-on-aws\/","og_locale":"en_US","og_type":"article","og_title":"How to setup Odoo 18 on AWS","og_description":"Odoo 18 is officially rolled out and has already created a buzz among the users. You can visit GitHub to find the Source Code.","og_url":"https:\/\/cloudkul.com\/blog\/how-to-setup-odoo-18-on-aws\/","og_site_name":"Cloudkul","article_published_time":"2025-04-22T08:37:29+00:00","article_modified_time":"2025-05-09T10:52:00+00:00","og_image":[{"url":"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2025\/04\/image-1024x413.png"}],"author":"Rajat singh sajwan","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/cloudkul.com\/blog\/how-to-setup-odoo-18-on-aws\/","url":"https:\/\/cloudkul.com\/blog\/how-to-setup-odoo-18-on-aws\/","name":"How to setup Odoo 18 on AWS","isPartOf":{"@id":"https:\/\/cloudkul.com\/blog\/#website"},"datePublished":"2025-04-22T08:37:29+00:00","dateModified":"2025-05-09T10:52:00+00:00","author":{"@id":"https:\/\/cloudkul.com\/blog\/#\/schema\/person\/657de05381e7f905c55e030cc0eb7eb3"},"description":"Odoo 18 is officially rolled out and has already created a buzz among the users. You can visit GitHub to find the Source Code.","breadcrumb":{"@id":"https:\/\/cloudkul.com\/blog\/how-to-setup-odoo-18-on-aws\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cloudkul.com\/blog\/how-to-setup-odoo-18-on-aws\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/cloudkul.com\/blog\/how-to-setup-odoo-18-on-aws\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cloudkul.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to setup Odoo 18 on AWS"}]},{"@type":"WebSite","@id":"https:\/\/cloudkul.com\/blog\/#website","url":"https:\/\/cloudkul.com\/blog\/","name":"Cloudkul","description":"Host your eCommerce Store on AWS with Optimized Performance","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cloudkul.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/cloudkul.com\/blog\/#\/schema\/person\/657de05381e7f905c55e030cc0eb7eb3","name":"Rajat singh sajwan","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudkul.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/206d9c43eae9025169b733cea458e0d0?s=96&d=https%3A%2F%2Fs.gravatar.com%2Favatar%2F6148c37469011bc2f8e491ca8f5de495%3Fs%3D80&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/206d9c43eae9025169b733cea458e0d0?s=96&d=https%3A%2F%2Fs.gravatar.com%2Favatar%2F6148c37469011bc2f8e491ca8f5de495%3Fs%3D80&r=g","caption":"Rajat singh sajwan"},"url":"https:\/\/cloudkul.com\/blog\/author\/rajatsinghsajwan-ck789\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/posts\/19904"}],"collection":[{"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/users\/59"}],"replies":[{"embeddable":true,"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/comments?post=19904"}],"version-history":[{"count":41,"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/posts\/19904\/revisions"}],"predecessor-version":[{"id":19993,"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/posts\/19904\/revisions\/19993"}],"wp:attachment":[{"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/media?parent=19904"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/categories?post=19904"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/tags?post=19904"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}