Maynard
(Maynard)
1
你好,我是第一次使用 Discourse 的用户,技术知识有限。
我已按照官方说明在 Lightsail Ubuntu 18.04.2 上安装了 Discourse。论坛已顺利运行,没有任何问题。
现在尝试安装一个插件:Install plugins on a self-hosted site
运行 ./launcher rebuild app 时出现以下错误:
“您的 Docker 安装未使用受支持的存储驱动。如果我们继续操作,可能会导致安装损坏。推荐使用 aufs 存储驱动,但 zfs/btrfs/overlay 和 overlay2 也可能可以工作。其他存储驱动已知存在问题。您可以通过运行 “docker info” 并查看 “Storage Driver” 行来确认当前使用的文件系统。如果您仍希望继续使用当前不受支持的存储驱动,请阅读 launcher 的源代码,了解如何绕过此检查。”
我已在论坛中搜索了相同的信息,但回复中并不清楚具体该如何操作。
在我的设置中运行 docker info 显示使用的是 overlay2。
我不明白为什么 Discourse 可以正常安装,但插件安装/重建却无法工作。
在安装和尝试插件安装/重建之间,我只根据通知更新了 Discourse 和 Docker 管理器,并执行了 apt-get update 和 apt-get upgrade。
能否有人说明一下 overlay2 是否可以使用?还是必须使用 aufs?具体需要遵循哪些步骤才能让插件安装正常工作?
非常感谢!
Maynard
Falco
(Falco)
2
Can you please run docker info and paste the output here?
Maynard
(Maynard)
3
非常感谢快速回复。这是 docker info 的输出:
Client:
Debug Mode: false
Server:
Containers: 1
Running: 1
Paused: 0
Stopped: 0
Images: 2
Server Version: 19.03.1
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 894b81a4b802e4eb2a91d1ce216b8817763c29fb
runc version: 425e105d5a03fabd737a126ad93d62a9eeede87f
init version: fec3683
Security Options:
apparmor
seccomp
Profile: default
Kernel Version: 4.15.0-1044-aws
Operating System: Ubuntu 18.04.2 LTS
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 1.945GiB
Name: ip-172-26-45-250
ID: X2FT:FW3R:QQM2:BNNU:4L3L:QYEV:WMI4:IC2T:LHJV:UNSG:RYHH:OWJ7
Docker Root Dir: /var/lib/docker
Debug Mode: false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false
WARNING: No swap limit support
Falco
(Falco)
4
哦,我想我知道发生什么了。
试试:
cd /var/discourse
git pull
./launcher rebuild app
Maynard
(Maynard)
5
再次感谢快速回复。
添加 git pull 后,数据探索器插件现在可以正常工作了。
Falco
(Falco)
7
嗯,说来话长。
Docker 19.x 彻底改变了 docker info 输出的结构。
我们在一个多个月前,当 19.x 还处于测试分支时,就已经修复了这个问题:https://github.com/discourse/discourse_docker/commit/98c5fec43de299bdfc55970cea3495fa4c27d6ac。由于我们的启动脚本支持自动更新,这对大多数人来说并不是问题。
不过,我们的 launcher 脚本会在自动更新前检查存储兼容性。因此,如果用户使用的是旧版启动脚本,并在更新启动脚本之前就更新了 Docker,就可能进入这种状态。
Stephen
(Stephen)
8
这已不是我们第一次遇到这种情况了。能否让启动器先更新,然后再提示用户重新运行?