Quick Start

In a hurry? No sweat! Here’s a quick start to using ufo that takes only a few minutes. For this example, we will use a sinatra app from tongueroo/hi. The first ufo init command sets up the ufo directory structure in your project. The second ufo ship command deploys your code to an AWS ECS service.

gem install ufo
git clone https://github.com/tongueroo/hi.git
cd hi
ufo init --app=hi --image=tongueroo/hi
ufo ship hi-web

What Happened

The ufo ship hi-web command does the following:

  1. Builds the Docker image and pushes it to a registry
  2. Builds the ECS task definitions and registry them to ECS
  3. Updates the ECS Service

You should see something similar to this:

$ ufo init --app=hi --image=tongueroo/hi
Setting up ufo project...
      create  .env
      create  .ufo/settings.yml
      create  .ufo/task_definitions.rb
      create  .ufo/templates/main.json.erb
      create  .ufo/variables/base.rb
      create  .ufo/variables/development.rb
      create  .ufo/variables/production.rb
      create  Dockerfile
      create  bin/deploy
      append  .gitignore
Starter ufo files created.
$ ufo ship hi-web
Building docker image with:
  docker build -t tongueroo/hi:ufo-2017-09-10T15-00-19-c781aaf -f Dockerfile .
....
Software shipped!
$

Congratulations! You have successfully deployed code to AWS ECS with ufo. It was really that simple 😁

Note: This quick start does require that you have a docker working on your environment. For docker installation instructions refer to to the official docker installation guide.

Learn more in the next sections.

Pro tip: Use the <- and -> arrow keys to move back and forward.

Edit this page

See a typo or an error? You can improve this page. This website is available on GitHub and contributions are encouraged and welcomed. We love pull requests from you!