Chevereto图床Docker安装中要注意的问题

想用MarkDown写文章,插入图片不好解决,注册一个网络图床太麻烦,以后总是多一个帐号去维护,考虑自己在NAS中建立图床,先在网络上找了一下关于Docker条件下安装的方法,然后选择Chevereto进行安装配置,结果踩了一个大坑,浪费了半天时间。

为图方便按网络教程做好了images文件、.htaccess配置文件的映射,同时考虑以后直接在NAS修改docker中的内容,不用SSH,把整个/var/www/html中的app文件夹也映射出来了,启动容器运行,直接出现以下错误:

没有办法,再去网络上找答案,绝大多数人都说是apache2.conf文件的配置问题,按照方法做了多次修改根本没有用,只看到一遍文章讲到是该站点下缺少.htaccess文件,打开映射好的.htaccess配置文件,发现是空文件,照道理容器运行成功应该自动生成该文件,显然该文件出了问题,在网络上找了一个配置文件写入,错误成功克服,再次运行容器,另一个错误又来了。

网络上找不到类似问题,回过头看官方文档,发现文档中只有images卷的映射建议,因此把app的映射删除了,成功解决问题。

第二天为搞清问题的根源,仔细查看了网站下的各种php文件,并做了故障复现,虽然不会apache编程,但思路还是知道了大概,软件的作者不允许将app等文件及相关文件夹映射出来,有专门的检查语句,一旦查到问题会给出相应的错误提示,如将/var/www/html/整个文件夹映射出来的错误是:

经验教训:

1、尽量不要先入为主,遵从官方文档比较好

以前建各种应用的容器,基本都可以随便映射各种文件,但这次不行,作者专门设置了映射禁止,可能是为了保护站点下的文件完整性吧,防止意外错误。

2、网络上的教程要善于辨别不同的情况,少走弯路

以前的版本不知道,但新的1.3版肯定是不宜进行其他文件和文件夹的映射,按照官方文档建立容器,几分钟就可以完好运行,又说回第1 点了,后台查看.htaccess文件自动成功改写。因为一旦出现错误,解决起来是非常耗时耗力的。

另外,容器运行的日志显示有错误, AH00558: apache2: Could not reliably determine the server’s fully qualified domain name, using 172.17.0.x. Set the ‘ServerName’ directiv ,服务器域名问题,内网使用,不用修复,错误可以在运行一段时间后自动消失。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注