Skip to content

Deploy your Astro Site to Zerops

Zerops is a dev-first cloud platform that can be used to deploy an SSR Astro site.

This guide will walk you through deploying an Astro project using the Node.js adapter to Zerops.

Creating a Zerops Node.js project

Section titled Creating a Zerops Node.js project

You can create a Node.js service for your Astro site through the Zerops project add wizard, or by importing an Astro site using .yaml.

The following YAML structure will setup a project called my-astro-sites with a Node.js v20 service called hellothere. One Zerops project can contain many Astro apps.

project:
name: my-astro-sites
services:
- hostname: hellothere
type: nodejs@20
ports:
- port: 4321
httpSupport: true
minContainers: 1

Building and deploying your app to Zerops

Section titled Building and deploying your app to Zerops

Now that you’ve prepared a Node.js service on Zerops, you will need to create a zerops.yml file at the root of your project to trigger the build and deploy pipeline on Zerops.

The following example shows configuring the required build and run operations for the example project with hostname hellothere:

zerops.yml
zerops:
- setup: hellothere
build:
base: nodejs@20
buildCommands:
- npm i
- npm run build
deploy:
- dist
- package.json
- node_modules
cache:
- node_modules
- package-lock.json
run:
start: node dist/server/entry.mjs
envVariables:
HOST: 0.0.0.0
NODE_ENV: production

Trigger the pipeline using GitHub / GitLab

Section titled Trigger the pipeline using GitHub / GitLab

To setup continuous deployment on either a push to a branch or on a new release, go to your Node.js service detail and connect your Zerops service with a GitHub or GitLab repository.

Trigger the pipeline Using Zerops CLI (zcli)

Section titled Trigger the pipeline Using Zerops CLI (zcli)
  1. Install the Zerops CLI.

    Terminal window
    # To download the zcli binary directly,
    # use https://github.com/zeropsio/zcli/releases
    npm i -g @zerops/zcli
  2. Open Settings > Access Token Management in the Zerops app and generate a new access token.

  3. Log in using your access token with the following command:

    Terminal window
    zcli login <token>
  4. Navigate to the root of your app (where zerops.yml is located) and run the following command to trigger the deploy:

    Terminal window
    zcli push

More Deployment Guides