# Qovery

This is a step-by-step guide for deploying a Strapi project on Qovery (opens new window).

Qovery is a CaaS for developers to deploy their full-stack applications on AWS, GCP, Azure and Digital Ocean. Qovery provides access to managed PostgreSQL and free SSL.

TIP

Qovery provides free hosting for individual developers.

# Deploying with the web interface

# 1. Create a Qovery Account

Visit the Qovery dashboard (opens new window) to create an account if you don't already have one.

# 2. Create a project

  • 点击 the create a project button and give a name to your project.

  • 点击 next.

    .
    :
    

# 3. Add your Strapi app

  • 点击 the create an application button and select your Github or Gitlab repository where your Strapi app is located.
  • 点击 next.

# 4. Add a PostgreSQL database

  • 点击 add a PostgreSQL database.
  • 选择 version
  • Give a name to your PostgreSQL databse.
  • 点击 next.

# 5. Add a storage

  • 点击 add a Storage.
  • Give a name to your storage.
  • 选择 storage type between Slow HDD, HDD, SSD, and Fast SSD. (SSD is recommended)
  • 选择 size.
  • Give a mount point.

# 6. Deploy

点击 the Deploy 按钮 Your app should be deployed: you can see the status in real time by clicking on Deployment logs.

# Deploying with the CLI

# 1. Create a Qovery Account

Install the Qovery CLI (opens new window) and type the command qovery auth to create an account if you don't already have one.

# 2. Add a .qovery.yml File

Place a .qovery.yml file at the root of your project. Do not forget the dot when naming the file.

application:
  name: GIVE_A_NAME_TO_YOUR_APP
  project: GIVE_A_PROJECT_NAME
  publicly_accessible: true
  storage: # qovery will attach automatically a SSD storage on /srv/app
    - name: data
      type: ssd
      size: 5GB
      mount_point: /srv/app
databases:
  - type: postgresql # qovery will create a managed PostgreSQL database
    version: 12
    name: psql
routers:
  - name: main
    custom_domains: # optional: only if you want to use your domain
      - branch: master
        domain: my.domain.tld
    routes:
      - application_name: strapi
        paths:
          - /*

TIP

详细信息 about the .qovery.yml file, 访问 the Qovery application 文章 (opens new window).

注意

Alternatively, you can deploy your Strapi application with a PostgreSQL database in the Qovery dashboard.

# 3. Add a Dockerfile (optional)

By default, Qovery uses Buildpacks to build and run your Strapi application. But it is also possible to build and run your application by providing a Dockerfile (see Quovery 文章 (opens new window) 了解详情).

# 4. Deploy

  1. Commit your changes and push them to GitHub or GitLab.
  2. Execute the qovery status --watch command to see in real time your Strapi application deployment status. When the status of your application is RUNNING, it means it has been successfully deployed.

# Scaling

For vertical scaling, Qovery lets you upgrade your CPU and RAM per instance. For horizontal scaling, Qovery auto-scales the number of instance running depending of the CPU and Memory usage.