官方地址:http://zimg.buaa.us/

配置文件 zimg.lua

--zimg server config

--server config
--是否后台运行
is_daemon = 1
--绑定IP
ip = '0.0.0.0'
--端口
port = 4869
--运行线程数,默认值为服务器CPU数
--thread_num = 4
backlog_num = 1024
max_keepalives = 1
retry = 3
system = io.popen('uname -sn'):read('*l')
pwd = io.popen('pwd'):read('*l') --header config
--返回时所带的HTTP header
headers = 'Cache-Control:max-age=7776000'
--是否启用etag缓存
etag = 1 --access config
--support mask rules like 'allow 10.1.121.138/24'
--NOTE: remove rule can improve performance
--上传接口的IP控制权限,将权限规则注释掉可以提升服务器处理能力,下同
upload_rule = 'allow all'
--下载接口的IP控制权限
download_rule = 'allow all'
--管理接口的IP控制权限
admin_rule = 'allow all' --cache config
--是否启用memcached缓存
cache = 1
--缓存服务器IP
mc_ip = '127.0.0.1'
--缓存服务器端口
mc_port = 11211 --log config
--log_level output specified level of log to logfile
--[[
LOG_FATAL 0 System is unusable
LOG_ALERT 1 Action must be taken immediately
LOG_CRIT 2 Critical conditions
LOG_ERROR 3 Error conditions
LOG_WARNING 4 Warning conditions
LOG_NOTICE 5 Normal, but significant
LOG_INFO 6 Information
LOG_DEBUG 7 DEBUG message
]]
--输出log级别
log_level = 6
--输出log路径
log_name = pwd .. '/log/zimg.log' --htdoc config
--默认主页html文件路径
root_path = pwd .. '/www/index.html'
--admin页面html文件路径
admin_path = pwd .. '/www/admin.html' --image process config
--禁用URL图片处理
disable_args = 0
--禁用lua脚本图片处理
disable_type = 0
--lua process script
--lua脚本文件路径
script_name = pwd .. '/script/process.lua'
--format value: 'none' for original or other format names
--默认保存新图的格式,字符串'none'表示以原有格式保存,或者是期望使用的格式名
format = 'jpeg'
--quality value: 1~100(default: 75)
--默认保存新图的质量
quality = 75 --storage config
--zimg support 3 ways for storage images
--value 1 is for local disk storage;
--value 2 is for memcached protocol storage like beansdb;
--value 3 is for redis protocol storage like SSDB.
--存储后端类型,1为本地存储,2为memcached协议后端如beansdb,3为redis协议后端如SSDB
mode = 1
--save_new value: 0.don't save any 1.save all 2.only save types in lua script
--新文件是否存储,0为不存储,1为全都存储,2为只存储lua脚本产生的新图
save_new = 1
--上传图片大小限制,默认100MB
max_size = 100*1024*1024
--允许上传图片类型列表
allowed_type = {'jpeg', 'jpg', 'png', 'gif', 'webp'} --mode[1]: local disk mode
--本地存储时的存储路径
img_path = pwd .. '/img' --mode[2]: beansdb mode
--beansdb服务器IP
beansdb_ip = '127.0.0.1'
--beansdb服务器端口
beansdb_port = 7900 --mode[3]: ssdb mode
--SSDB服务器IP
ssdb_ip = '127.0.0.1'
--SSDB服务器端口
ssdb_port = 8888 --lua conf functions
--部分与配置有关的函数在lua中实现,对性能影响不大
function is_img(type_name)
local found = -1
for _, allowed in pairs(allowed_type) do
if string.lower(type_name) == allowed then
found = 1
break
end
end
return found
end

docker

docker pull iknow0612/zimg
docker run -it -d -p 4869:4869 -v /data/zimg/:/zimg/bin/img -v /data/zimg/conf:/zimg/bin/conf --name my_zimg iknow0612/zimg sh app.sh

docker-compose.yml

version: '3'
services:
zimg:
image: iknow0612/zimg
container_name: zimg
restart: always
volumes:
- /data/zimg/data:/zimg/bin/img
- /data/zimg/conf:/zimg/bin/conf
ports:
- 4869:4869
command: [sh,app.sh]

然后日志打印

官方使用指南:http://zimg.buaa.us/documents/guidebook/

然后浏览器访问 ip:4869

上传返回示例

访问 ip:4869/admin 进入删除页面

Linux使用docker安装zimg图片服务器的更多相关文章

  1. Linux通过docker安装运行酷Q--用QQ骰子君进行跑团

    Linux通过docker安装运行酷Q 文:铁乐与猫 需求:和小伙伴周末进行愉快的TRPG跑团,需要在QQ讨论组上加了qq小号后,将qq小号用酷Q配合投骰的应用变成骰子君. 限制:我个人的云计算服务器 ...

  2. 04_安装Nginx图片服务器

    一.安装Nginx 先安装Nginx,看我之前发的文章: 搭建Nginx服务器 二.安装vsftpd 再安装vsftpd组件,看我之前发的文章: Linux安装ftp组件 三.开始搭建Nginx图片服 ...

  3. 基于Docker搭建Nginx图片服务器

    前言 一般开发中,都会把图片上传到一个目录,然后将目录和文件名拼接存储在数据库中,但是,这种方法如果没弄好的话可能有一定的缺陷. 若项目搬迁,即时这台服务器本身还在用,存放在服务器的跟项目相关的图片也 ...

  4. Linux系统上安装软件(ftp服务器)

    一:安装ftp服务器 在安装linux系统的时候,自定义软件包安装时,我已经勾选了ftp服务器,所以已经 安装过了,如果没有勾选,需要额外下载ftp的安装包,进行安装. ftp服务器搭建过程中遇到的问 ...

  5. Linux、Docker安装Nginx

    Docker安装Nginx #docker images nginx #docker search nginx #docker pull nginx #docker run -it -p 8084:8 ...

  6. 【Linux】【自学笔记】Linux下面docker安装mysql

    写在前面: 捣腾继续,之前把一个SpringBoot的程序安装在docker上面,参考链接:https://www.cnblogs.com/aki-stones/p/2019-11-01-note.h ...

  7. Linux下docker安装教程

    目前最新版本的docker19.03支持nvidia显卡与容器的无缝对接,从而摆脱了对nvidia-docker的依赖.因此毫不犹豫安装19.03版本的docker,安装教程可参考官方教程Centos ...

  8. linux上Docker安装gogs私服亲测(详解)

    一.前言 有网友问我为什么要使用私服,可能大部分人都不是太懂,网上那么多存储仓库而且好用方便,但是你想过没有如果企业中的项目,放在人家的仓库上这个安全性不是太好,所以说一般企业都会有自己的私服.本章教 ...

  9. 使用 Linux Centos Docker 安装 2Bizbix

    在 Docker 安装 2Bizbix 安装 Centos 7 安装 mysql5.5 镜像 映射好数据库的配置文件和数据库目录 在 Windows 安装 2Bizbox 安装 jboss/base- ...

随机推荐

  1. [NOI2020] 制作菜品

    看懂题目是生产第一要素. 考虑\(m = n - 1\)则必定有解.我们每次选择最小的和最大的拼在一起即可. 当\(m\)大于\(n\),那么我们只要每次选择最大的给他消掉即可. \(m = n - ...

  2. R绘图布局包 customLayout

    今天介绍一个R画图布局的包,地址如下: https://github.com/zzawadz/customLayout https://www.customlayout.zstat.pl/index. ...

  3. (转载)Java里新建数组及ArrayList java不允许泛型数组

    java中新建数组: String[] s;//定义的时候不需要设置大小 s = new String[5];//为数组分配空间时就要设置大小   对于ArrayList, ArrayList< ...

  4. 搭建简单的SpringCloud项目三:问题及解决

    GitHub:https://github.com/ownzyuan/test-cloud 前篇:搭建简单的SpringCloud项目一:注册中心和公共层 搭建简单的SpringCloud项目二:服务 ...

  5. Prometheus基础

    监控系统作用 监控系统主要用于保证所有业务系统正常运行, 和业务的瓶颈监控. 需要周期性采集和探测. 采集的详情 采集: 采集器, 被监控端, 监控代理, 应用程序自带仪表盘, 黑盒监控, SNMP. ...

  6. 日常Java 2021/10/20

    Java提供了一套实现Collection接口的标准集合类 bstractCollection 实现了大部分的集合接口. AbstractList 继承于AbstractCollection并且实现了 ...

  7. Java 性能优化的 50 个细节

    在JAVA程序中,性能问题的大部分原因并不在于JAVA语言,而是程序本身.养成良好的编码习惯非常重要,能够显著地提升程序性能. #尽量在合适的场合使用单例 使用单例可以减轻加载的负担,缩短加载的时间, ...

  8. oracle 执行计划的获取方法

    1.用explain plan for来获取执行计划 explain plan for <sql>; select * from table(dbms_xplan.display()); ...

  9. 【编程思想】【设计模式】【其他模式】hsm

    Python版 https://github.com/faif/python-patterns/blob/master/other/hsm/hsm.py """ Impl ...

  10. ES6 object.defineProperty

    Object.defineProperty() 方法会直接在一个对象上定义一个新属性,或者修改一个对象的现有属性, 并返回这个对象. Object.defineProperty(obj, prop, ...