Introducing Boatyard

We are very pleased to announce the first release of Boatyard.

Boatyard is an open source project written in Go which provides an easy-to-use API and a web UI to build Docker images from Dockerfiles, TAR archives, and GitHub repositories; and push them to any registry, public or private.

Boatyard UI

It connects to one (or more, through a load balancer) Docker servers which will be used to build and push the images, and listens for incoming jobs on its REST API. With a simple request such as the following:

POST /api/v1/build HTTP/1.1
{
 "image_name": "tutum/hello-world",
 "username": "tutum",
 "password": "mypassword",
 "email": "user@example.com",
 "tar_url": "http://files.tutum.co/docker-hello-world-1.0.tar.gz"
}

Boatyard will fetch the provided TAR file, send it to the Docker server(s) for building, and then push it to the appropriate registry.

Also supports building from public GitHub repositories:

POST /api/v1/build HTTP/1.1
{
 "image_name": "tutum/hello-world",
 "username": "tutum",
 "password": "mypassword",
 "github_username": "tutumcloud",
 "github_reponame": "docker-hello-world",
 "github_tag": "master"
}

Check out the README to get started.

We will also be providing boatyard as a free hosted service at https://boatyard.io/

Give it a try!

CTO & Co-founder of Tutum

Tagged with: , ,
Posted in Features, News
7 comments on “Introducing Boatyard
  1. prologic says:

    Is the plan to support Bitbucket as well in the future? What about more secure (non-plaintext) authentication? e.g: API tokens (HMAC) or Challenge/Response?

    • fernandomayo says:

      You can add Bitbucket support to https://github.com/tutumcloud/boatyard/blob/master/TODO.md 🙂
      Regarding authentication, username + password (basic auth) is what Docker registries support at the moment when pushing images. Do you have a use case where the registry needs another form of authentication?

      • prologic says:

        I was just thinking looking at the sample reqeusts that sending credentials in the clear (SSL would help;) isn’t that secure :/
        But this is largely dependent on the Docker public registry?

      • fernandomayo says:

        The service at boatyard.io uses SSL encryption, although the sample configuration for nginx in the master branch does not have SSL enabled. We are offloading SSL in our load balancer so we are using the nginx configuration at https://github.com/tutumcloud/boatyard/blob/ssl-lb/nginx-sslredirect.conf (redirect all HTTP traffic to HTTPS).
        Then, the Docker server will use SSL when pushing the image to the registry (which can be Docker’s or a third party).
        The only connection that is not yet SSL enabled is between boatyard and the Docker server performing the build, although this could also be added (http://docs.docker.io/examples/https/).

      • prologic says:

        Fair enough! Sounds like it should be okay. Only problem to worry about is storing your Docker Registry credentials 🙂 Please post a link to your BoatYard presentation as soon as it’s available for public viewing 🙂

  2. Sebastian says:

    How about private Github repos – Is this on the roadmap?

Leave a Comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Categories
%d bloggers like this: