我已经在 app.yml 中的替换规则中为 nginx 使用了更高的 worker_connections 和 worker_processes 值。
虽然我会尝试找到最佳值,但最好不要每次都重建 discourse。有没有一种方法可以在容器中更改 nginx.conf 并重新启动 nginx 进程而不必完全重建 discourse?
我已经在 app.yml 中的替换规则中为 nginx 使用了更高的 worker_connections 和 worker_processes 值。
虽然我会尝试找到最佳值,但最好不要每次都重建 discourse。有没有一种方法可以在容器中更改 nginx.conf 并重新启动 nginx 进程而不必完全重建 discourse?
是的,您可以进入容器(例如 ./launcher enter app),使用 apt 安装编辑器,编辑 NGINX 文件,然后运行 sv restart nginx(reload 也许也行?)。
我想到了一个方法并尝试过,直到我发现甚至连一个 apt 源都没有。为我不了解且在生产环境中运行的系统添加一个源听起来有点不可靠。至少有 vi 在那里将有助于完成一些简单的任务 眨眼 ![]()
我以前从没注意过 apt 源,但我有几个模板会执行 apt-get update; apt-get install 来在容器中安装东西(例如,我的 dashboard.literatecomputing.com 需要 python 和 ansible)。它能正常工作,或者说直到上周五都还能正常工作。同样,我用于执行迁移的模板会添加 vim 和其他一些东西。
我不建议手动编辑生产环境中的内容,因为下次重建时更改显然会丢失,但如果你只是想测试值以找到有效的值,这可能是一个足够好的解决方案(因为它避免了大量的重建)。
另外,2 容器设置在进行重建并启动新容器时,通常只有不到 1 分钟的停机时间。
我不会关注 apt sources,但没有 sources 就无法安装,否则我真的不在乎。
root@forum-app:/var/www/discourse# apt install vi
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package vi
root@forum-app:/var/www/discourse# apt list sources
Listing... Done
root@forum-app:/var/www/discourse#
为了确保万无一失,apt-get 和 vim 或 nano 也是如此 ![]()
在使用 apt install 之前,您是否运行了 apt update?第一次使用时,您需要刷新源列表。
Ubuntu 某项操作,在运行 apt update && apt dist-upgrade(我回答了否,因为它想更新 pqsl,我当时很慌)之后,apt install nano 成功了。
嗯,没有源——没有源的话 apt updates 什么也做不了 ![]()
这是一个标准的安装吗?
我刚刚在今天构建的站点上运行了
apt update
apt installl -y vim
并安装了 vim。
在 discourse 容器内?非常标准的安装。
那我无法解释你上面粘贴的代码为何对你无效。我今天做的,而且已经做了很多年了。
对我来说,在 Ubuntu 上执行 /launcher enter app 后,我可以成功运行 apt update && apt install nano -y。(vim 更像是 S/M 类型编辑器……)。所以如果 apt 不起作用,我会认为要么是系统本身,要么是 docker 坏了🤔
对我来说,它现在也奏效了——老实说,我开始怀疑人生了——我不确定是什么原因,但它现在奏效了。叹气
没关系,这种情况时有发生!很高兴现在它能正常工作了。![]()