用Docker封装了一个简易的图片代理服务

in #cn-dev7 years ago (edited)

在开发 SteemTools 服务号的文章单独页面的时候,遇到的一个问题就是有些人的图片存放在了被墙的服务器上了,导致文章中的图片无法正常显示。

从网上搜索了下,找到了一个用 node 写的图片代理,我已经 fork 到了自己的库中,https://github.com/ety001/node-image-proxy

为了方便部署和管理,把这个服务封装进了 Docker 中。

运行命令如下:

docker run -itd --name node-image-proxy -p 9091:9091 -v /data/node-image-cache:/app/cache --restart always ety001/node-image-proxy

其中 /data/node-image-cache 目录是用来存储缓存的,自己手动建立一个目录就好了。

启动成功后,可以用 nginx 的反向代理来实现 https,也可以直接使用,只需要把要代理的图片地址放到 url 后面就好了,例如这样:

这样只需要把服务部署在国外服务器上,然后在解析 markdown 的时候把原来的图片地址加上代理地址后,就可以正常的访问文章中的图片了。

PS:

另外,欢迎使用 SteemTools 的文章显示功能,目前还没有入口,只能手动构造 URL,并且只能在微信中访问。URL地址结果如下:

https://steemtools.top/steempage/post/@author/title

把其中的 authortitle 替换成自己的文章就可以了。

使用这个文章显示的好处就是:可以绕过墙,并且分享到朋友圈和群里的时候,会用文章的首个图片作为缩略图。^_^

Coin Marketplace

STEEM 0.04
TRX 0.32
JST 0.083
BTC 60762.96
ETH 1565.09
USDT 1.00
SBD 0.47