Get started
Deploy your first service
Take a public Docker image from an empty workspace to a running service with an HTTPS address.
Updated
This takes a public Docker image from an empty workspace to a running service with an HTTPS address. You name your organization if you have none yet, create one project, add one service from the image traefik/whoami, set the port it listens on, and deploy it once. traefik/whoami is a small web server that answers every request with a description of the request, so you can tell at a glance that the address reaches it. Everything happens in the console; nothing needs installing.
Sign in and create your organization
Open
https://cloud.cahaves.comand press Continue with GitHub or Continue with Google. The first press creates your account, and the console asks you to name your organization, which your projects and your bill will belong to. Organization name holds your name: keep it or type another, such as your company's, and press Create organization. You land on the Dashboard. An account that already has an organization goes straight there.Cloud prepares the organization's workspace once the organization is created. Until it is ready, the Projects page shows "Your workspace is still being prepared." instead of New project, and checks again every few seconds. If it stays that way, see the workspace is still being prepared.
Create a project
In the rail, open Projects and press New project. Type a name of up to 60 characters, such as
Docs demo, and press Create project.The project's address in the console is derived from the name,
/docs-demohere, and never changes, so renaming the project later breaks no link.Add a service from an image
Open the project and press Add a service. Under Applications, on the Docker image card, press Create. Fill in the form:
Image:
traefik/whoami.Tag: leave it at
latest. A Digest would pin one exact build instead.Name:
web, up to 40 characters.Size: keep Nano.
The line under Tag and Digest reads "Cloud will run traefik/whoami:latest." The Order summary beside the form shows the size's hourly rate, a monthly estimate and, for Nano, "Your first nano service across all your organizations runs free". Press Create service.
The service's own page opens on Overview, and its chip reads Idle: the service exists and nothing runs yet.
Set the port
Cloud sends traffic to port
3000inside the container unless you set another, and the image form does not ask for one.traefik/whoamilistens on port80, so this step is required for this image, and it has to come before the first deploy: the address Cloud generates when a deploy succeeds takes the service's port at that moment, and keeps it.Open the service's Settings section, set Port to
80and press Save settings.Port set to 80 on the service's Settings section. Skipping this does not make the deploy fail: it ends Done, and the address then answers with an error page, because nothing listens on port
3000. Changing Port afterwards does not move that address. If you deployed first, set Port to80, open Domains, press Remove domain on the service's generated address, and deploy again: the next successful deploy generates a new address on port80.Deploy
Press Deploy in the service's header. The new deployment's page opens at once, as Deployment #1. Its chip moves from Queued to Starting to Deploying, and ends on Done, Failed or Cancelled. The build log streams under it; for an image it shows the image being pulled.
A finished deployment and the start of its build log. Open the address
When a deployment ends Done, Cloud gives an application that has no domain an address on the platform's domain: the service's name followed by six random letters and digits. Open Domains in the rail to see it. Its chip moves from Checking DNS to Preparing HTTPS to HTTPS active.
Until then, Visit in the service's header stays greyed out and its tooltip reads "Its domain is still being set up". Once the chip reads HTTPS active, press Visit, or Visit site on the domain's card. The page lists the request
traefik/whoamireceived.
Stop what you are not using
Every hour, on the hour, Cloud counts each service's running containers and charges that hour at the service's size, and the organization's month is billed on the 1st of the next month. Your first nano service, counted across all your organizations, runs free, and its page marks it Free, so if this is your first, it costs nothing. Press Stop in the service's header when you are finished: the chip reads Stopped, and an hour with nothing running is not charged. Start brings it back. Billing has the details.
If something goes wrong
The deployment ends Failed. The deployment's page gives one sentence saying why, and the build log shows where it stopped. A deployment failed goes through each sentence.
The deployment is Done, but the address shows an error. Check Port on Settings first; after correcting it, remove the domain and deploy again, as the port step describes. If the service's Overview shows "The engine keeps restarting this service", the container is exiting on its own; see the service keeps restarting.
Deploy is greyed out. Its tooltip says why. Deploy is greyed out or refused lists every reason.
Visit reads "Add a domain to visit this service". No address was generated for it. Add one from Domains, as Domains describes.
Next steps
Deploy from GitHub
Build your own repository, and deploy again on every push.
Set environment variables
Give the service its configuration and secrets.
Add a database
Run PostgreSQL or another database beside the service and connect to it.
Use your own domain
Point a hostname you own at the service, with a certificate issued for it.