Meteor CLI
Deploy your Meteor app to Galaxy from the terminal with one command.
Deploying a Web App?
This guide is for Meteor apps. For Node.js, AdonisJS, or Python, use the Galaxy CLI instead.
Prerequisites
- Meteor CLI installed
- A Galaxy account
- A payment method added for identity verification
Log in before deploying:
meteor loginCheck your username with meteor whoami. Add --owner my-account to deploy under a specific user or organization.
Before creating a Free app, check the Free app policy.
Prepare Your Deploy with an AI Assistant
Working with a coding agent? Meteor's official deployment skill gives it guidance for deploying Meteor 3 apps to Galaxy, including CLI options, regions, and settings. The skills are currently in beta; follow the installation instructions to get started.
Deploy
The basic command:
meteor deploy myappThat's it. Galaxy creates your app on the Free plan with a Tiny container and deploys it to US East.
Choose the Right Deployment Target
For a new app on Galaxy Metal, pass a simple app name like myapp. Don't add .meteorapp.com. For a new Free app, a custom domain like myapp.example.com fails with Free apps must use a free-tier domain. Use a simple name and let Galaxy generate the hostname like myapp.sandbox.galaxycloud.app.
To update an existing or migrated app, use its current Galaxy hostname, its region (DEPLOY_HOSTNAME), and its account (--owner). Check these values before deploying to avoid creating another app.
Regions
Set DEPLOY_HOSTNAME to deploy to a different region:
| Region | DEPLOY_HOSTNAME |
|---|---|
| US East (default) | us-east-1.galaxy-deploy.meteor.com |
| EU West | eu-west-1.galaxy-deploy.meteor.com |
| Asia Pacific | ap-southeast-2.galaxy-deploy.meteor.com |
New Free apps run in US East. For a paid app in EU West:
DEPLOY_HOSTNAME=eu-west-1.galaxy-deploy.meteor.com meteor deploy myapp --plan essentialsWindows Command Prompt
In Command Prompt, use SET DEPLOY_HOSTNAME=eu-west-1.galaxy-deploy.meteor.com before running meteor deploy.
Plan and Container Size
Use --plan and --container-size when creating an app:
meteor deploy myapp --plan professional --container-size standardPlans: free, essentials, professional. Container sizes: tiny, compact, standard, double, quad, octa, dozen.
Change an existing app's plan or container size in the Galaxy dashboard.
Settings
Pass your configuration via a settings file:
meteor deploy myapp --settings settings.jsonSettings persist across deployments until you specify a new file. See the Meteor Reference for the settings structure.
Database
Add a free shared MongoDB to your deployment:
meteor deploy myapp --mongoFor a free plan app with a database:
meteor deploy myapp --free --mongoFree MongoDB Limitations
The shared cluster doesn't include backups. Not recommended for production. See the Meteor Reference for SSL configuration.
CI/CD with Deployment Tokens
Deployment Token Availability
You can no longer create new deployment tokens for meteor deploy --deploy-token. Existing tokens continue to work in US East and EU West, in the region they were created for. Deployment tokens aren't supported in Asia Pacific.
Use a saved Meteor login session for automated pipelines.
Save a login session
METEOR_SESSION_FILE=token.json meteor loginThis saves your login session in token.json. Log in again if the session expires.
Use in your pipeline
METEOR_SESSION_FILE=token.json DEPLOY_HOSTNAME=us-east-1.galaxy-deploy.meteor.com meteor deploy myapp --owner my-account --settings settings.jsonReplace the app name, region, and owner with your app's values.
Keep Tokens Secure
Store token.json in your CI/CD platform's secret storage (GitHub Secrets, GitLab Variables) and restore it before deploying. It contains account credentials, so never commit it to your repo.
Flag Reference
| Flag | Description |
|---|---|
--free | Create an app on the Free plan |
--plan [plan] | Set a new app's plan: professional, essentials, or free |
--mongo | Provision a free shared MongoDB |
--container-size [size] | Set a new app's container size |
--settings [file] | Pass a JSON settings file |
--cache-build | Reuse build if git commit is unchanged (Meteor 1.11+) |
--debug | Deploy without minifying code |
--no-wait | Exit after upload, don't wait for deployment |
--deploy-polling-timeout [ms] | Wait timeout after upload (default: 15 min) |
--owner [user/org] | Deploy under a specific account |
--delete, -D | Permanently delete the app |
Commit your code changes before using --cache-build to avoid reusing an outdated build.
Transfer Apps From the Dashboard
Changing app ownership from the CLI is deprecated. Move apps between accounts from the Galaxy dashboard instead. See Transfer an App.

