使用 docker 将 gitbook 开源图书转换为 EPUB
从原理上而言,使用官方的 gitbook 工具,就可以非常方便地将源文件转换为 epub、pdf。但是,自从官方网站改版,关闭搜索、下载接口后,gitbook 官方工具就处于废弃状态。想要在电脑上正确执行 gitbook-cli 可能需要回退 NodeJS 和 npm 版本,甚至有可能还需要修改一些代码。
那么最优雅的解决方案应该是使用 Docker 来执行上述任务。
通过检索,可以找到 gitbook 的 docker 镜像:billryan/docker-gitbook
剩下就是标准的 docker 操作
- 拉取镜像:
docker pull billryan/docker-gitbook
(因为该作者已经上传 docker hub,因此可以直接拉) - 运行容器:
docker run -it -v /home/ohyee/projects:/mnt/projects billryan/gitbook /bin/bash
(这里将本机的目录映射到 docker 里,方便输入源文件,输出电子书) - 书籍转换:
gitbook pdf ./ a.pdf
或gitbook epub ./ a.epub
(需要在书籍根目录执行) - 收尾工作:
docker system prune
和docker volume prune
(清除不用的 docker 容器和卷)