Deploy Your First Instance
In this tutorial you will connect a Git repository to Skysize and deploy a live Odoo instance. By the end, you will have a running production environment accessible at a skysize.io subdomain.
Time to complete: ~10 minutes
What you need:
- A Skysize account
- A GitHub, GitLab, or Bitbucket account
- An Odoo repository (or a fork of one)
Step 0: Connect your Git provider (one time)
Before you can create a project with custom code, Skysize needs permission to read your repository. You can do this ahead of time from Account > Integration, or directly inside the project wizard when it asks for a Git account.
- Click Connect GitHub (or GitLab / Bitbucket) and approve the requested permissions on your provider's authorization page.
- You are returned to Skysize automatically once the connection is established.
You only need to authorize a provider once, the connection is reused for every project. You can connect more than one provider and manage your connections at any time.
Step 1: Create a project
The New Project wizard walks you through a few short steps. Your progress is kept while you connect a Git provider, so you can safely leave and come back.
- From the Projects page, click New Project and enter a project name. This becomes your
skysize.iosubdomain, so keep it short. - Will this project use custom code?
- Yes, we'll write custom code: custom modules or themes deployed from Git. This is the path this tutorial follows.
- No, standard Odoo is enough: standard apps only, configured from inside Odoo, no repository. Skip to Projects Without Custom Code; a repository can be attached later.
- Git account: pick GitHub, GitLab or Bitbucket. A provider that is not connected yet shows a Connect button (see Step 0).
- Repository: choose the account or organization, then either
- Use an existing repository: select it from the list (start typing to filter), or
- Create a new repository: Skysize creates an empty repository with that name under the account you chose.
- Odoo: choose the Odoo version that matches your codebase and the edition:
- Community: open-source Odoo
- Enterprise: requires a valid Odoo Enterprise subscription, which you activate from inside your Odoo database once it is running
- Hosting: select the deployment region closest to your users:
- Europe (Belgium)
- North America (USA, Iowa)
- Asia (Singapore)
- Oceania (Australia)
- Review: check the summary (nothing has been created yet; click any line to jump back and change it) and click Create project.
Skysize connects to your repository, discovers its branches, and takes you to the project dashboard.
Step 2: Your production branch
When your project is ready, Skysize promotes the repository's default branch (usually main or master) to Production, sets it to deploy automatically on every push, and starts the first deployment. No action is required to get your production environment live.
Open the Deployments tab to watch the build progress through its stages (cloning the repository, pulling the image, initialising the database, starting the container).
Choosing a different production branch
Every branch in your repository is listed on the Branches tab. If you want a branch other than the default to be production:
- Open the Branches tab and click the branch you want to promote.
- In the Branch Type section, select Production and click Save.
- Skysize starts a new deployment for that branch.
A branch's type is always one of Production, Staging, or Development, there is no "off" state. Each project has exactly one production branch at a time, so promoting a different branch to Production replaces the previous one.
The first deployment creates a brand-new database with only the base Odoo module installed. Once the deployment finishes, log in to your Odoo instance and install the modules you need from the Apps menu.
Step 3: Access your instance
- Wait for the deployment status to show running (the build status reaches Success). This typically takes a few minutes.
- Click the Login button on your production deployment to open your Odoo instance in a new tab.
Your instance is now live at your-project-name.skysize.io.
If the build fails, open the deployment and click View Logs to see exactly which step failed. Most first-deployment failures are caused by a missing Python dependency in requirements.txt or an error in a module's manifest.
What's next?
- Push a code change to your production branch, because it deploys on push, Skysize automatically triggers a new deployment.
- Add a custom module → see Add a Custom Module.
- Set up a staging environment → see Development Workflow.
- Add a custom domain → see Custom Domains.