用Docker封装了一个简易的图片代理服务
在开发 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
把其中的 author 和 title 替换成自己的文章就可以了。