mirror of
https://github.com/imgproxy/imgproxy.git
synced 2025-01-08 10:45:04 +02:00
130 lines
3.0 KiB
Markdown
130 lines
3.0 KiB
Markdown
# Installation
|
|
|
|
There are four ways you can install imgproxy:
|
|
|
|
## Docker
|
|
|
|
imgproxy can (and should) be used as a standalone application inside a Docker container. Just pull the official image from Docker Hub:
|
|
|
|
```bash
|
|
docker pull darthsim/imgproxy:latest
|
|
docker run -p 8080:8080 -it darthsim/imgproxy
|
|
```
|
|
|
|
You can also build your own image. imgproxy is ready to be dockerized, plug and play:
|
|
|
|
```bash
|
|
docker build -f docker/Dockerfile -t imgproxy .
|
|
docker run -p 8080:8080 -it imgproxy
|
|
```
|
|
|
|
## 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
|
|
```
|
|
|
|
Read the [chart's README](https://github.com/imgproxy/imgproxy-helm) for more info.
|
|
|
|
## Heroku
|
|
|
|
imgproxy can be deployed to Heroku with a click of a button:
|
|
|
|
[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy?template=https://github.com/imgproxy/imgproxy)
|
|
|
|
However, you can do it manually with a few steps:
|
|
|
|
```bash
|
|
git clone https://github.com/imgproxy/imgproxy.git && cd imgproxy
|
|
heroku create your-application
|
|
heroku stack:set container
|
|
git push heroku master
|
|
```
|
|
|
|
## Packages
|
|
|
|
### 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
|
|
```
|
|
|
|
## From the source
|
|
|
|
You can get imgproxy source by clonning the GitHub repo:
|
|
|
|
```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 the specific version:
|
|
|
|
```bash
|
|
mkdir imgproxy
|
|
cd imgproxy
|
|
curl -Ls https://github.com/imgproxy/imgproxy/archive/v2.13.1.tar.gz \
|
|
| tar -xz --strip-components 1 -C .
|
|
```
|
|
|
|
### Ubuntu
|
|
|
|
First, install [libvips](https://github.com/libvips/libvips).
|
|
|
|
Ubuntu apt repository contains a pretty old version of libvips. You can use PPA with more recent version of libvips:
|
|
|
|
```bash
|
|
sudo add-apt-repository ppa:dhor/myway
|
|
sudo apt-get update
|
|
sudo apt-get install libvips-dev
|
|
```
|
|
|
|
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 Go:
|
|
|
|
```bash
|
|
sudo add-apt-repository ppa:longsleep/golang-backports
|
|
sudo apt-get update
|
|
sudo apt-get install golang-go
|
|
```
|
|
|
|
And finally, install imgproxy itself:
|
|
|
|
```bash
|
|
CGO_LDFLAGS_ALLOW="-s|-w" \
|
|
go build -o /usr/local/bin/imgproxy
|
|
```
|
|
|
|
### macOS + Homebrew
|
|
|
|
```bash
|
|
brew install vips go
|
|
PKG_CONFIG_PATH="$(brew --prefix libffi)/lib/pkgconfig" \
|
|
CGO_LDFLAGS_ALLOW="-s|-w" \
|
|
CGO_CFLAGS_ALLOW="-Xpreprocessor" \
|
|
go build -o /usr/local/bin/imgproxy
|
|
```
|