You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+10-3Lines changed: 10 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,7 @@
1
-
# Pure Nginx Image Resize/Crop Microservice
2
-
Image cropping with gravity, resize and compress on the fly with nginx image_filter module. A tiny docker container to build your own Cloudinary-like service.
1
+
# nginx image proxy
2
+
>High Performance and Low Resource Utilization Microservice
3
+
4
+
image cropping with gravity, resize and compress on the fly with nginx **image_filter** module. A tiny docker container to build your own Cloudinary-like service.
-[x] convert/force output to another format, support formats: bmp, jpg, png, gif, webp, and tiff
11
13
-[x] use custom ssl and saved config when you mount '/app' volume. nginx logs has also been redirect so you can backup, such as aws s3 sync. Just delete the default redirect to stdout/access.log and stderr/error.log files.
12
14
-[x] support international characters in URL
13
-
-[x] automatically follow redirect at origin
15
+
-[x] automatically follow redirect at origin
16
+
-[x] overridable nginx config - easily add secure link or additional nginx config
14
17
15
18
# What does this solve?
16
19
You have a huge repository of images that need dynamic resize and cropping. Cloudinary can be expensive and redundant if you run your own CDN in front of this microservice.
@@ -23,7 +26,11 @@ Unlike other libraries, this does not try to do every image transformation and/o
23
26
3. If you want thumbnail caching to s3, just write a lambda function and use this server to generate your thumbnail. Upload the result to s3 with the same function.
24
27
25
28
# build
29
+
To achieve smaller/tiny microservice, this container utilize multi-stage build introduced in Docker 17.06; therefore, Docker 17.06+ is required to build.
30
+
31
+
```
26
32
docker build -t nginx-image-proxy .
33
+
```
27
34
28
35
# run
29
36
docker run -d --restart=always -p 80:80 niiknow/nginx-image-proxy
0 commit comments