Add fly.io (#300)

* feat: add fly.io

* feat(readme): fly image width

* feat(readme): add html image + badge

* fix(docs): try space non-URL encoding

* Update README.md

* Update README.md

* Update README.md

* feat(docs): add fly.io info and links
This commit is contained in:
Tom
2020-04-16 15:43:15 +02:00
committed by GitHub
parent 1e1d4acc8d
commit 7396edbb80
3 changed files with 1333 additions and 28 deletions

View File

@@ -1,6 +1,6 @@
# imaginary [![Build Status](https://travis-ci.org/h2non/imaginary.png)](https://travis-ci.org/h2non/imaginary) [![Docker](https://img.shields.io/badge/docker-h2non/imaginary-blue.svg)](https://hub.docker.com/r/h2non/imaginary/) [![Docker Registry](https://img.shields.io/docker/pulls/h2non/imaginary.svg)](https://hub.docker.com/r/h2non/imaginary/) [![Go Report Card](http://goreportcard.com/badge/h2non/imaginary)](http://goreportcard.com/report/h2non/imaginary)
# imaginary [![Build Status](https://travis-ci.org/h2non/imaginary.png)](https://travis-ci.org/h2non/imaginary) [![Docker](https://img.shields.io/badge/docker-h2non/imaginary-blue.svg)](https://hub.docker.com/r/h2non/imaginary/) [![Docker Registry](https://img.shields.io/docker/pulls/h2non/imaginary.svg)](https://hub.docker.com/r/h2non/imaginary/) [![Go Report Card](http://goreportcard.com/badge/h2non/imaginary)](https://goreportcard.com/report/h2non/imaginary) [![Fly.io](https://img.shields.io/badge/deploy-fly.io-blue.svg)](https://fly.io/launch/github/h2non/imaginary)
**[Fast](#benchmarks) HTTP [microservice](http://microservices.io/patterns/microservices.html)** written in Go **for high-level image processing** backed by [bimg](https://github.com/h2non/bimg) and [libvips](https://github.com/jcupitt/libvips). `imaginary` can be used as private or public HTTP service for massive image processing with first-class support for [Docker](#docker) & [Heroku](#heroku).
**[Fast](#benchmarks) HTTP [microservice](http://microservices.io/patterns/microservices.html)** written in Go **for high-level image processing** backed by [bimg](https://github.com/h2non/bimg) and [libvips](https://github.com/jcupitt/libvips). `imaginary` can be used as private or public HTTP service for massive image processing with first-class support for [Docker](#docker) & [Fly.io](#flyio).
It's almost dependency-free and only uses [`net/http`](http://golang.org/pkg/net/http/) native package without additional abstractions for better [performance](#performance).
Supports multiple [image operations](#supported-image-operations) exposed as a simple [HTTP API](#http-api),
@@ -25,7 +25,7 @@ To get started, take a look the [installation](#installation) steps, [usage](#co
- [Prerequisites](#prerequisites)
- [Installation](#installation)
- [Docker](#docker)
- [Heroku](#heroku)
- [Fly.io](#flyio)
- [Cloud Foundry](#cloudfoundry)
- [Recommended resources](#recommended-resources)
- [Production notes](#production-notes)
@@ -143,38 +143,23 @@ services:
- "9000:9000"
```
### Heroku
### Fly.io
Click on the Heroku button to easily deploy your app:
Deploy imaginary in seconds close to your users in [Fly.io](https://fly.io) cloud by clicking on the button below:
[![Heroku](https://www.herokucdn.com/deploy/button.png)](https://heroku.com/deploy)
<a href="https://fly.io/launch/github/h2non/imaginary">
<img src="testdata/flyio-button.svg?raw=true" width="200">
</a>
Or alternatively you can follow the manual steps:
#### About Fly.io
Clone this repository:
```
git clone https://github.com/h2non/imaginary.git
```
Fly is a platform for applications that need to run globally. It runs your code close to users and scales compute in cities where your app is busiest. Write your code, package it into a Docker image, deploy it to Fly's platform and let that do all the work to keep your app snappy.
Set the buildpack for your application
```
heroku config:add BUILDPACK_URL=https://github.com/h2non/heroku-buildpack-imaginary.git
```
You can [learn more](https://fly.io/docs/) about how Fly.io can reduce latency and provide a better experience by serving traffic close to your users location.
Optionally, define the PKGCONFIG path:
```
heroku config:add PKG_CONFIG_PATH=/app/vendor/vips/lib/pkgconfig
```
#### Global image service tutorial
Add Heroku git remote:
```
heroku git:remote -a your-application
```
Deploy it!
```
git push heroku master
```
[Learn more](https://fly.io/docs/app-guides/run-a-global-image-service/) about how to run a custom deployment of imaginary on the Fly.io cloud.
### CloudFoundry

1292
README.md~ Normal file

File diff suppressed because it is too large Load Diff

28
testdata/flyio-button.svg vendored Normal file

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 15 KiB