1
0
mirror of https://github.com/imgproxy/imgproxy.git synced 2024-11-24 08:12:38 +02:00
imgproxy/docs/installation.md

130 lines
3.1 KiB
Markdown
Raw Normal View History

2018-10-04 14:59:57 +02:00
# Installation
There are four ways you can install imgproxy:
2018-10-04 14:59:57 +02:00
2019-09-18 14:04:01 +02:00
## Docker
2018-10-04 14:59:57 +02:00
imgproxy can (and this is highly recommended) be used as a standalone application inside a Docker container. Just pull the official image from Docker Hub:
2018-10-04 14:59:57 +02:00
```bash
docker pull darthsim/imgproxy:latest
docker run -p 8080:8080 -it darthsim/imgproxy
2018-10-04 14:59:57 +02:00
```
You can also build your own image. imgproxy is ready to be dockerized out of the box:
2018-10-04 14:59:57 +02:00
```bash
docker build -f docker/Dockerfile -t imgproxy .
docker run -p 8080:8080 -it imgproxy
2018-10-04 14:59:57 +02:00
```
2020-02-05 16:15:59 +02:00
## Helm
imgproxy can be easily deployed to your Kubernetes cluster using Helm and our official Helm chart:
```bash
helm repo add imgproxy https://helm.imgproxy.net/
# With Helm 3
helm upgrade -i imgproxy imgproxy/imgproxy
# With Helm 2
helm upgrade -i --name imgproxy imgproxy/imgproxy
```
Check out the [chart's README](https://github.com/imgproxy/imgproxy-helm) for more info.
2020-02-05 16:15:59 +02:00
2019-09-18 14:04:01 +02:00
## Heroku
2018-10-04 14:59:57 +02:00
imgproxy can be deployed to Heroku with the click of a button:
2018-10-04 14:59:57 +02:00
2019-06-17 13:54:11 +02:00
[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy?template=https://github.com/imgproxy/imgproxy)
2018-10-04 14:59:57 +02:00
That being said, you can also do it manually in just a few steps:
2018-10-04 14:59:57 +02:00
```bash
git clone https://github.com/imgproxy/imgproxy.git && cd imgproxy
heroku create your-application
heroku stack:set container
git push heroku master
2018-10-04 14:59:57 +02:00
```
2019-09-18 14:04:01 +02:00
## Packages
2019-09-18 14:04:01 +02:00
### Arch Linux and derivatives
[imgproxy](https://aur.archlinux.org/packages/imgproxy/) package is available from AUR.
### macOS + Homebrew
[imgproxy](https://formulae.brew.sh/formula/imgproxy) is available from Homebrew:
```bash
brew install imgproxy
```
2019-09-18 14:04:01 +02:00
## From the source
2018-10-04 14:59:57 +02:00
You can get the imgproxy source code by cloning the GitHub repo:
2020-07-01 13:10:09 +02:00
```bash
git clone https://github.com/imgproxy/imgproxy.git
cd imgproxy
```
...or by downloading the source tarball:
```bash
mkdir imgproxy
cd imgproxy
curl -Ls https://github.com/imgproxy/imgproxy/archive/master.tar.gz \
| tar -xz --strip-components 1 -C .
```
You can also download a specific version:
2020-07-01 13:10:09 +02:00
```bash
mkdir imgproxy
cd imgproxy
curl -Ls https://github.com/imgproxy/imgproxy/archive/v2.13.1.tar.gz \
| tar -xz --strip-components 1 -C .
```
2019-09-18 14:04:01 +02:00
### Ubuntu
2018-10-04 14:59:57 +02:00
2019-06-17 13:54:11 +02:00
First, install [libvips](https://github.com/libvips/libvips).
2018-10-04 14:59:57 +02:00
The Ubuntu apt repository contains a pretty old version of libvips. You can use PPA to access a more recent version of libvips:
2019-06-17 13:54:11 +02:00
```bash
sudo add-apt-repository ppa:dhor/myway
sudo apt-get update
sudo apt-get install libvips-dev
2019-06-17 13:54:11 +02:00
```
But if you want to use all the features of imgproxy, it's recommended to build libvips from the source: [https://github.com/libvips/ libvips/wiki/Build-for-Ubuntu](https://github.com/libvips/libvips/wiki/Build-for-Ubuntu)
Next, install the latest version of Go:
2019-06-17 13:54:11 +02:00
```bash
sudo add-apt-repository ppa:longsleep/golang-backports
sudo apt-get update
sudo apt-get install golang-go
2019-06-17 13:54:11 +02:00
```
And finally, install imgproxy itself:
2018-10-04 14:59:57 +02:00
2019-06-17 13:54:11 +02:00
```bash
2020-07-01 13:10:09 +02:00
CGO_LDFLAGS_ALLOW="-s|-w" \
go build -o /usr/local/bin/imgproxy
2019-06-17 13:54:11 +02:00
```
2018-10-04 14:59:57 +02:00
2019-09-18 14:04:01 +02:00
### macOS + Homebrew
2019-06-17 13:54:11 +02:00
```bash
brew install vips go
2020-07-01 13:10:09 +02:00
PKG_CONFIG_PATH="$(brew --prefix libffi)/lib/pkgconfig" \
2019-06-17 13:54:11 +02:00
CGO_LDFLAGS_ALLOW="-s|-w" \
CGO_CFLAGS_ALLOW="-Xpreprocessor" \
2020-07-01 13:10:09 +02:00
go build -o /usr/local/bin/imgproxy
2019-06-17 13:54:11 +02:00
```