Get started

Your first app in 5 minutes

Take your first app live from a Git repository or a zip — no Dockerfile or server setup of your own.

By the end of this guide your app will be running at an HTTPS address, and pushing to your repository can deploy a new version by itself.

What you need

  • A Meghly account (you can sign in to the panel).
  • Your code — on GitHub, GitLab or any Git address, or as a .zip file.
  • Code that runs on your own computer. Nothing extra to write: Meghly works out how to build and start it.

1. Start a new app

In the panel's left menu: Apps → New app. There are three steps: Source, Name and size and Summary.

2. Where the code comes from (Source)

Choose Git repository, then give the repository's address and branch:

Repository address
https://github.com/you/shop.git
  • Public repository: the https:// address is enough.
  • Private repository: give the SSH address (git@github.com:you/shop.git). Once the app is made the panel shows a deploy key — add it on GitHub under the repository's Settings → Deploy keys (read access only).

No Git? Choose Zip upload; after the app is made you upload the zip from the app's Deploy button (up to 2 GB).

Want a ready-made app such as WordPress, Laravel or Ghost? Install it from the App Store in one click — no code needed.

3. Name and size

  • App name: lower-case letters, digits and dashes (shop, billing-api). The name becomes part of the app's address.
  • What is it? Meghly usually works this out itself; you can pick the language, version and framework if you like.
  • Size: how much memory the app gets.
SizeMemoryFor
Small256 MBa small site or a worker
Medium512 MBmost websites and APIs
Large1 GBbusy sites, .NET, Laravel
Extra large2 GBheavy apps

You can change the size at any time later.

4. Check and create (Summary)

If everything looks right, create the app. The first deploy starts at once and its page opens, where you watch the steps live:

  1. Clone — fetches the code.
  2. Detect — reads the code and says what it found: the framework, its version and its port.
  3. Build — builds the app's image (cancelled after 15 minutes). The whole build log is there to read.
  4. Release — runs the database migration once, if there is one.
  5. Start → Health check → Route — starts the new version, gives it traffic only once its health check passes, then stops the old one.

5. Open your app

When the deploy has finished, the app's Overview shows its address — with HTTPS, the certificate taken care of. Click it and there is your app.

Every deploy stays in the Deployments tab; one click takes you back to any of them.

Deploy on every push

The app's General page has a Webhook URL and a Secret under Auto-deploy on push. On GitHub, under the repository's Settings → Webhooks → Add webhook:

  • Payload URL: the panel's Webhook URL
  • Content type: application/json
  • Secret: the panel's Secret

From then on, every push to that branch deploys a new version by itself.

If something goes wrong

What you seeWhat to do
Detect could not tell what it isCheck that the project file is at the repository's root (*.csproj, package.json, requirements.txt, composer.json), or pick the language under What is it?
The build failedRead the last lines of the build log — usually the same error you would get on your own computer
The health check failedIs the app listening on the port in the PORT variable? See How apps run
The app cannot reach its databaseCheck the database is attached to the app, and that the connection is read from the variables

Next

Stuck?

Talk to our engineers directly — by phone or email.

01782618248shohag.meghly@gmail.com