oCoreoCore Docs

Deploy Your First Odoo Instance

Complete walkthrough to deploy a running Odoo instance with custom modules in about 30 minutes.

This tutorial walks you through deploying your first Odoo instance on oCore from start to finish. By the end, you will have a running Odoo instance with your custom modules deployed from a Git repository.

Estimated time: 30 minutes

If you have not installed oCore yet, start with the Getting Started guide first.

What you will build

  • A project linked to a Git repository containing Odoo addons
  • A development environment with a running Odoo instance
  • Custom modules installed and accessible in Odoo

Step 1: Verify your oCore setup

Before starting, confirm that oCore is running and you have a server connected.

View your servers

Check that at least one server shows Online status.

Open in Dashboard

Open the oCore dashboard and verify:

  1. You are signed in to your organization
  2. At least one server shows Online status in the Servers page
  3. The server has sufficient resources (minimum 2 GB free RAM for an Odoo instance)

If you do not have a server connected yet, follow the Quick Start guide to add one.

Step 2: Add a server (if needed)

If you need to connect a new server:

Navigate to Servers in the sidebar and click Add Server.

Enter a name for your server (e.g., "Production Server") and its SSH connection details:

  • Hostname or IP address
  • SSH port (default: 22)
  • SSH user (must have sudo access)

Add your SSH key or let oCore generate one. If oCore generates the key, copy the public key to your server's ~/.ssh/authorized_keys file.

Click Test Connection to verify oCore can reach the server, then click Save.

oCore will install the agent on your server automatically. Wait for the server status to show Online.

Add a new server

Open the Add Server form in your dashboard.

Open in Dashboard

Projects in oCore organize related Odoo instances and link them to a Git repository containing your custom addons.

Navigate to Projects in the sidebar and click Create Project.

Enter a project name (e.g., "My Odoo App") and an optional description.

Under Git Repository, enter the URL of your repository containing Odoo addons:

https://github.com/your-org/odoo-addons.git

Or use SSH:

git@github.com:your-org/odoo-addons.git

If the repository is private, configure authentication:

  • HTTPS: Provide a personal access token
  • SSH: oCore will use its generated deploy key (copy it to your Git provider's deploy keys)

Set the default branch (typically main or master) and click Create.

Create a new project

Open the Create Project form in your dashboard.

Open in Dashboard

Your Git repository should contain Odoo addon modules at the root level or in a subdirectory. Each addon should have an __manifest__.py file. oCore will detect and list available modules automatically.

Step 4: Create a development environment

Environments in oCore map to branches in your Git repository and contain the configuration for deploying Odoo instances.

Inside your project, click Create Environment.

Configure the environment:

  • Name: "Development" (or any descriptive name)
  • Branch: Select the branch to deploy from (e.g., main)
  • Server: Select the server to deploy to
  • Odoo Version: Choose the Odoo version (e.g., 17.0)
  • Edition: Community or Enterprise

Configure instance resources:

  • Workers: 2 (suitable for development)
  • Memory limit: 2048 MB
  • CPU limit: 1.0

Click Create to set up the environment. oCore will begin provisioning the Odoo instance.

View your projects

Navigate to Projects to create an environment inside one.

Open in Dashboard

Step 5: Deploy and access Odoo

Once the environment is created, oCore automatically triggers the first deployment.

Navigate to the environment's Deployments tab to watch the deployment progress. You will see each step:

  • Pulling the Docker image for your Odoo version
  • Cloning your Git repository
  • Installing Python dependencies (if any)
  • Starting the Odoo container
  • Running database initialization

When the deployment status shows Success, the instance is ready.

Click the instance URL shown in the environment overview (e.g., https://dev-my-odoo-app.ocore.example.com) to open Odoo in your browser.

Log in to Odoo with the default admin credentials shown in the environment settings.

The first deployment may take several minutes as Docker images are pulled for the first time. Subsequent deployments are faster because images are cached.

Step 6: Install custom modules

With your Odoo instance running and your Git repository linked, install your custom modules:

In the oCore dashboard, navigate to your environment and click the Modules tab.

oCore lists all detected addon modules from your repository. Find the module you want to install and click Install.

Alternatively, you can install modules from within Odoo:

  1. Open the Odoo web interface
  2. Navigate to Apps
  3. Click Update Apps List
  4. Search for your module and click Install

After installation, verify the module is active by checking the Installed filter in Odoo's Apps menu.

Manage your instances

Navigate to your project's environment to manage modules.

Open in Dashboard

What to do next

Now that you have a running Odoo instance with custom modules:

  • Set up CI/CD to deploy automatically when you push to Git. See Set Up CI/CD with GitHub.
  • Configure backups to protect your data. See Implement a Backup Strategy.
  • Add more environments (staging, production) with different branches and configurations.
  • Invite team members to collaborate through your organization's team settings.
  • Set up monitoring alerts to be notified of resource issues. See the Monitoring section.

For a deeper understanding of the concepts used in this tutorial, see the Concepts section which explains the relationships between servers, projects, environments, instances, and deployments.

Was this page helpful?