一、在群晖docker上安装calibre-web

1. 下载相关的镜像文件

打开Docker后点击左侧注册表,在上方搜索栏搜索calibre

然后我们选择使用 technosoft2000/calibre-web 的镜像,因为这个版本的镜像的网页会更加漂亮美观。

双击technosoft2000/calibre-web 然后选择下载最新的版本即可。

2. 启动镜像

在 Docker 中找到我们刚刚下载好的镜像,点击左上角启动

3. 获取群晖NAS的GID和UID,以便于后续配置文件

进入群晖的控制面板 ,然后选择 终端机和SNAP

在这里,我们启动群晖的ssh功能后,然后保存

Windows用户,可以在电脑中搜索PowerShell 这个系统自带软件。基本上Windows 10以上系统都是默认安装的。

Mac OS 和 Linux 用户直接用系统自带的 Terminal 或者叫 终端 的系统自带软件。

以下的操作命令都是相同的,这里我使用 Mac OS 作为演示。

利用命令 ssh <你的群晖用户名>@<你进入群晖的内网ip地址>

在这里输入你的群晖的密码

然后输入以下命令:cat /etc/passwd | grep admin 并敲击回车

这里,显示了你的群晖 UIDGID

例如,前面的1024 就是我的UID100就是我的GID

  • 一定要记录下这个信息,稍后我们将会用到,否则会出现权限问题,导致后续calibre无法正常使用

4. 为calibre创建文件夹

点击共享文件夹后,然后新增一个共享文件夹:Docker 。只需要修改文件夹名称,其余设置均不用修改,保持默认选项即可。

我们之后把Docker相关的文件都可以放进去。

5. 配置镜像参数

将网络选择成与 Docker Host 相同的网络,然后点击下一步

将常规设置中的一些内容,做一些修改后进入高级设置

  • 切记勿直接进入下一步

这个时候我们需要使用到刚刚记录到的UIDGID

点击左上角的新增,然后会在列表最下面新增一个空白的行,这个时候输入我们刚刚查到的UIDGID

  • 这里注意,点击了以后会出现在列表最下面,所以找不到的话往下拉一下就看到了。群晖程序员可以改进一下UI了
  • 注意这里的名字是PGIDPUID

最后确认好了后点击保存就完成了。

现在会自动返回刚刚的界面,然后点击下一步

现在,我们来选择calibre文件的存储路径,这里我们选择使用官方推荐的路径。

点击添加文件夹

然后在calibre文件夹下创建两个文件夹:booksconfig 后,选择这两个文件夹

在装载路径中,分别写下图所示的路径,千万要对应好!!!

/books

/calibre-web/config

6. 修改calibre文件夹权限

进入群晖自带的软件 File Station,然后进入属性修改权限。

点击权限 ,然后选择新增

在用户或组里选择Everyone

然后勾选读取写入的小勾勾,它下面所有的权限都会被勾上,然后点击完成。

勾选应用到这个文件夹、子文件夹及文件,然后点击保存

二、进入callibre-web

1. 添加书库的原始数据库

因为calibre-web镜像是不带数据库的,这个时候我们需要用calibre本地版的数据库来引导。下面我提供了原始的calibre的原始数据库,方便大家下载使用。

如果想图省事儿可以直接将下面这个文件,拖拽到刚刚创建的docker/calibre/books中即可

metadata.db

下面建议大家使用的另一种方式就是下载一个calibre桌面端,这对于我们之后管理书库会方便很多。网页版的calibre-web更适合看书和下载,但是桌面端对于批量导入书籍都非常方便。

下载链接:https://calibre-ebook.com

根据自己操作系统选择下载即可,在安装过程中保持默认安装即可。

下载好calibre客户端后,将我们的数据库和NAS数据库保持同步。

下载完成后,calibre会让你选择书库的位置,这个时候我们将位置选择到群晖的docker/calibre/books 中即可。(记得要提前映射NAS到你的电脑,具体步骤可以参考百度)

2. 进入calibre-web网页

使用 <群晖ip地址>:8083 进入你的calibre-网页端。第一次启动会让你选择数据库的路径,直接输入/books 即可。

  • 如果没有出现以上内容,稍后需要进行设置。(稍后会进行提示)

这个时候会让你输入你的用户名密码 ,输入默认的用户名和密码即可。(稍后最好进行修改)

默认的用户名:admin

默认的密码:admin123

3. 修改calibre-web的语言

这个时候你看的用户界面应该是英文版的,我们先去把语言修改成简体中文。

点击admin,进入设置页面

在 Language 中选择 简体中文,最后点击在页面最下方的save保存

现在页面所有内容都是中文了,看起来会更加直观,现在我们去修改一下新用户的用户语言。

点击右上角的管理权限

选择编辑界面配置

将新用户默认语言修改为简体中文即可

calibre-web支持多个账号,你的家人朋友也可以浏览你NAS上的书库,并使用不同的账号。在他们注册了账号后,默认语言将是简体中文。

4. 配置数据库路径(按需)

刚刚登陆网页时,如果没有出现要你选择数据库,一定要在这里选择配置。

选择数据库的路径,直接输入/books 即可。

5. 开启上传权限

calibre-web默认是不开启网页端上传权限的,只能用calibre桌面端进行管理书库。但是我们也希望通过网页端也能实现书本的上传,这个时候开启权限即可。

功能配置中勾选启用上传即可开启网页端上传功能。

6. 启动匿名浏览

calibre-web默认是不允许匿名浏览的,也就是说没有登录的用户是看不到页面的,这对于我这个希望展示的人来说多少有点不方便。我希望大家谁都能看我书库里的书列表,但是不允许下载和阅读。这个时候打开匿名浏览即可。

进入编辑基本配置

点击允许匿名浏览 即可开启。

之后你可以在用户组里设置匿名用户也就是guest 的权限。

现在你已经完成了在局域网内访问和管理calibre-web的功能。

如果你不想折腾外网访问,到这里你就可以开心的去上传书本了~

我建议大家使用calibre桌面端管理书本,个人感觉会更加方便一点。因为我们设置了同步,所以在桌面端上传的书本会时刻与网页保持同步。

三、通过外网访问

DDNS就是配置域名解析方式,默认群晖提供一些可选的域名给大家使用,有不少提供商,而且群晖提供自动申请https证书。

注意:要使用DDNS方式,必须有公网IP(拨号上网获取到公网IP,或者运营商支持IPV6公网IP),还要在路由器中配置端口映射转发,否则访问不了

部分宽带运营商默认获取到的是大内网IP,并不是公网IP,查看路由器后台获取到的IP地址,然后和群晖后台获取的IP地址对比下,如果不一样就不是公网IP,可以联系运营商开通公网IP,实在不行就只能换运营商了。

1. 利用群晖二级域名配置DDNS

新增一个DDNS配置:

主机名称起一个名字,最后全称就是访问域名了,如主机名称为test,最后访问地址就是:test.myds.me,配置的时候群晖会自动申请https证书,有https证书可以通过https访问,可以提高安全性。

注意:这里的IP地址和路由器获取的IP地址一定是一样才能访问。

如果有自己的域名,可以直接在域名提供商的网站上,将域名映射到自己的公网ip上。网上相关教程较多,这里就不再赘述了。

2. 配置端口映射

这里有个点需要注意一下,当你的群晖挂载到二级路由器(也就是说你的网络运营商提供了一个路由器,然后你用自己的路由器连接到运营商路由器,群晖挂载到自己的路由器)。

这种情况下,一定要将运营商的路由器设置成passthrough/穿透模式 才能够正常使用外网访问,如果群晖挂载到网络运营商服务器则没有影响。

配置好DDNS之后,并不能直接访问,需要路由器中配置端口转发,把公网IP的请求转发到群晖NAS端才可以。

根据你的路由器说明书,添加以下端口。协议如有最好设置成 BOTH 或者是 TCP和UDP

内部ip地址,就是你群晖NAS的内网ip地址

配置好之后就就可以测试访问了。

3. 用DDNS方式登录

在浏览器中输入完整域名地址,如:http://test.myds.me:5000,访问之后就看到自己的群晖NAS网页界面,注意要加上端口,否则可能访问失败。

4. ssl证书

如果是自己的域名,在每次访问时都会弹出安全提示,这是因为ssl证书的问题。在群晖安全性的证书里,添加自己的证书即可(记得一定要添加泛域名证书 *.域名)

如果使用群晖的二级域名,在之前创建通过以下方式已经自动创建了ssl证书,应该不会出现ssl证书的问题。

建议大家开启https的重定向,进入登录门户→打开重定向https即可

现在我们可以直接通过域名+端口号来访问我们的calibre-web

5. 摆脱使用端口号访问

如果不想访问时附带端口号,有两种选择:

  • 用自己的域名创建二级域名,如:calibre.abc.com
  • 使用刚刚创建的群晖二级域名(此时这个域名将无法访问你的群晖nas,会直接访问calibre-web网站)

打开反向代理服务器的设置,点击新增

按照以下内容,设置反向代理即可。

现在,你就可以通过你的域名来访问你的calibre-web服务器了。

快去跟你的小伙伴们分享你的线上图书馆吧。

群晖NAS搭建外网可访问的calibre的更多相关文章

  1. 腾讯云轻量服务器通过Docker搭建外网可访问连接的redis5.x集群

    总结记录/朱季谦 最近买了一台4核16的腾讯云轻量应用服务器,花了我快四百的大洋,打算搭建一堆docker组件集群,最先开始是通过docker搭建redis集群,计划使用三个端口,分别是7001,70 ...

  2. 怎么用群晖webdav实现外网映射网络驱动器

    前几天刚作好群晖nas局域网内的磁盘映射功能,今天老板又想实现在家里也能跟在公司一样的方便访问映射功能,因为使用网页操作实在太麻烦了.这可怎么办官方提供的 Assistant工具只能操作局域网的,又没 ...

  3. 说一下怎么搭建外网来访问SVN服务器

    一.搭建SVN服务器 1.所需软件 TortoiseSVN,下载地址http://tortoisesvn.net/downloads.html TortoiseSVN中文语言包,下载地址http:// ...

  4. 异地远程访问群晖NAS中的文件

    异地远程访问群晖NAS中的文件   我以群晖DS720+网络存储服务器为例,介绍我是如何异地远程访问群晖NAS中的文件的.   此文章只介绍部署操作的大概步骤,具体的操作方法和技巧可以在西瓜视频.抖音 ...

  5. 群晖NAS再折腾

    端口转发 两年前我买了一台双盘位的群晖NAS,配置两个4T的硬盘,这玩意儿一度改变了我使用电脑的模式,真是爽爆了!最最主要的功能就是我能用它规整我所有的资料,并且不管何时何地,只要有网就能访问.为了能 ...

  6. VMware 15.5虚拟机安装群晖NAS

     一.群晖nas简介 NAS(Network Attached Storage:网络附属存储),按字面意思理解其实就是网络存储器,可以理解为存储资料的网盘,云盘.NAS本身支持多种协议(如NFS.CI ...

  7. 外网主机访问虚拟机下的web服务器(NAT端口转发)

    主机:系统win7,ip地址172.18.186.210 虚拟机:VMware Workstation 7,虚拟机下安装了Centos操作系统,ip地址是192.168.202.128,部署了LAMP ...

  8. 外网主机访问虚拟机下的Web服务器_服务器应用_Linux公社-Linux系统门户网站

    body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI& ...

  9. VMware NAT端口映射 外网可以访问内网虚拟机

    我想尝试的是利用本机的ip+port来访问虚拟机上的web服务器,因为这样的话,我就能够将我的web服务器部署成为一个能让外网访问的服务器了,首先说下我的环境: 主机:系统win7,ip地址172.1 ...

  10. 关于外网无法访问阿里云主机CentOs

    前两天阿里云ECS搞活动,所有买了个三年的Ecs,然后照着之前在虚拟机同样的搭建服务器,一切都很正常,可是 当我配置好防火墙和nginx之后,发现个问题,外网无法访问. 思考: 1.我的nginx没配 ...

随机推荐

  1. springboot 集成 docsify 实现随身文档

    需求分析 文档可以和项目一起进行版本管理 文档可以在线访问 文档可以与springboot项目集成,不需要分开部署 MarkDown支持 文档跟随,打包jar也可以访问 技术选型 对于网上已有的方案, ...

  2. Java中如何创建不可变(immutable)类

    什么是不可变类 1. 不可变类是指类的实例一经创建完成,这个实例的内容就不会改变. 2. Java中的String和八个基本类型的包装类(Integer, Short, Byte, Long, Dou ...

  3. 高性能 Java 计算服务的性能调优实战

    作者:vivo 互联网服务器团队- Chen Dongxing.Li Haoxuan.Chen Jinxia 随着业务的日渐复杂,性能优化俨然成为了每一位技术人的必修课.性能优化从何着手?如何从问题表 ...

  4. Java SE 四大内部类

    内部类 1.成员内部类 调用成员内部类 //在外面的类的最后,写一个方法,调用成员内部类(创建对象,在访问) class Outer08{ class Inner08{ //成员内部类 public ...

  5. 查询参数和字符串校验:Query_Parameters_and_String_Validations

    官方文档地址:https://fastapi.tiangolo.com/zh/tutorial/query-params-str-validations/ # -*- coding: UTF-8 -* ...

  6. Elasticsearch: analyzer

    在今天的文章中,我们来进一步了解analyzer. analyzer执行将输入字符流分解为token的过程,它一般发生在两个场合: 在indexing的时候,也即在建立索引的时候 在searching ...

  7. 使用Docker Compose部署SpringCloud项目docker-compose.yml文件示例

    注意各组件之间的依赖关系 microservice-discovery-eureka: image: reg.itmuch.com/microservice-discovery-eureka port ...

  8. 我公司是属于生产制造业,最近考虑实施ERP,生产制造业的ERP那家比较好?

    直接告诉你用哪家ERP,那我就太不负责任了,不同企业的规模选用不同的系统,匹配很重要!比如你大型企业,业务管理都比较标准规范,变化性也不大,不差钱预算没问题(千万元起步),你可以考虑下头部厂商.但如果 ...

  9. ERP是什么呢?

    ERP(Enterprise Resource Planning,企业资源计划)系统,是进行物质资源.资金资源和信息资源集成一体化管理的企业信息管理系统,ERP统领企业全局,为管理层服务,重心在于企业 ...

  10. scss的使用方法

    引用scss文件--看上一篇的less使用,里面的Koala,一样的原理!!! 方法一: scss: /**定义变量 */$width:404px;$color:green;$font-size:20 ...