尝试在 DigitalOcean 上更新 Docker;卡在 Docker 19.03.13 😔

我尝试按照此处其他(已关闭)的帖子关于更新 Docker 的内容进行操作,但每次尝试的方法都因各种原因而失败。

和这里许多其他人一样,我在 DigitalOcean Droplet 上运行 Discourse。但我无法更新到 20.10.0(或者最好是 24.0.7)。

只是希望能找到一些指导,以便我能从命令行更新 Docker。谢谢!

**更多上下文:**当我尝试 Jay 的解决方案 时,我收到以下错误:

E: /etc/apt/sources.list 中的列表文件条目 58 格式错误 (URI 解析)
E: 无法读取来源列表。

奇怪的是,此错误重复了 3 次。(也许是因为我尝试了太多次并且安装了多个相同东西的错误版本?如果是这样,我不知道如何清理它……)

这看起来越来越像我需要更新Ubuntu,但我在这方面也遇到了困难。

如果我输入 apt update,我仍然会收到 格式错误的条目 58 的错误。

您可以搜索该错误并获得一些想法。

您的操作系统已过时。您的 sources.list 已过时。您需要升级您的服务器。我建议您迁移到新服务器。

有可能您有一个新的操作系统(但这不太可能,因为这是一个非常老的 Docker,大约是 2021 年的版本),并且不知何故某些东西弄乱了该文件。

如果您不想升级您的操作系统,您就不想升级 Discourse。

【引用=“Jay Pfaffman, 第4楼,话题:351522,用户名:pfaffman”】
你可以搜索那个错误,获取一些想法。
【/引用】

这就是我一直在做的事情,既在这个论坛上,也在其他地方。

【引用=“Jay Pfaffman, 第4楼,话题:351522,用户名:pfaffman”】
如果你不想升级你的操作系统,你也就不想升级Discourse。
【/引用】

我很乐意这样做,但我遇到了一个与错误58相关的错误。问题可能是我的服务器没有运行https,而sources.list文件只引用http?

如果我能解决这个步骤,我就可以升级操作系统。问题是,我不知道如何突破我现在所处的困境。

抱歉。我的建议是启动一个新的、可用的且已升级的服务器。这是万无一失、更快、更安全的方法。请参阅 使用 rsync 将 Discourse 站点迁移到另一台 VPS

1 个赞

nano /etc/apt/sources.list 并删除该行。您或某个脚本在那里添加了错误行。

我可能最终会去做这个,即使听起来会耗费几天时间——但我很难相信这比直接在这个Droplet上更新Ubuntu更简单。

考虑到这里所有人在Droplet上运行Discourse,是否没有已知的方法可以克服这个障碍?

它所需的天数会比尝试运行 dist upgrade 少得多

我可以使用DO的“从快照创建”功能吗?还是说这只会在我的新Droplet上放置相同、疲惫的操作系统?

这是该文件的最后几行。读出显示“读取了 59 行”,那么第 58 行是最后一行还是它之前的一行?

在我看来,这两行都没有出错,所以我不知道该删除哪一行……

别纠结了 :smirking_face: 我两种都做过。从时间上看,新建一个更快,但你必须添加 ssh 密钥才能让 rsync 工作。如果你以前没做过,这只需要几分钟——但很简单。

升级 Ubuntu 需要更长时间,因为你必须先拍一个快照。之后会有很多问题,主要是关于配置的,这些也需要一些时间来决定(如果选择这条路,我建议使用旧的配置)。但你不能完全确定是否有什么旧的东西被遗留下来了。

2 个赞

我想知道那些回溯包是什么。注释掉最后几行并尝试一下吧。因为你已经做了快照,你失去的只是时间。

唯一升级Ubuntu没有成功的经历发生在DO上,不过。

编辑

我检查了我在DO的VPS,它也有那些回溯包。所以那些一定是DO的自定义包。

不可以,你不能。它会创建1:1的副本。

2 个赞

好的,那不是文件的结束,我在摆弄安装时添加的那一行也被我删除了。准备再试试这些教程中的一些。

升级了 Ubuntu 和 Docker,但现在我的网站显示“无法访问该网站”。

不确定故障排除过程的下一步应该是什么;正尝试查看 Docker 日志。

这对我不意味着什么,但也许对你们中的某个人意味着什么:

然后现在是 502 错误。

再次运行启动器重建,论坛已恢复 :smiling_face_with_sunglasses:

太棒了!恭喜!很高兴你解决了问题!

我已经将你关于“升级”的帖子标记为解决方案。那才是真正的修复,尽管你还需要进行一次重建。

3 个赞

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.