关于AlmaLinux的讨论

您好,

我知道 Discourse 的支持版本需要特定的设置,但是……

我的好奇心和迄今为止付出的努力促使我在这里寻求帮助。

我在 AlmaLinux VPS 上安装了 Docker 并安装了 Discourse,运行并设置好了,邀请了用户,一切都很顺利。除了前端界面更改之外,我没有添加任何插件或进行任何重大修改。

然后,我进行了昨天(或前天)的 Discourse 安全更新。
一切都很顺利。

这就是新手错误发生的地方(我在这方面确实是个新手)。我决定更改我的 SSH 端口,却忘记在防火墙中打开该端口。好吧,在我修复之后,我尝试重新启动 Discourse,结果……

失败

总之,这里有一些错误(请告诉我是否有希望,或者我是否忽略了显而易见的问题,或者其他什么。请温柔一点 :stuck_out_tongue: :

失败
--------------------
Pups::ExecError: cd /var/www/discourse && sudo -H -E -u discourse bash -c '
  set -o errexit
  if [ $(git rev-parse --is-shallow-repository) == "true" ]; then
      git remote set-branches --add origin main
      git remote set-branches origin tests-passed
      git fetch --depth 1 origin tests-passed
  else
      git fetch --tags --prune-tags --prune --force origin
  fi
' failed with return #<Process::Status: pid 135 exit 128>
Location of failure: /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn'
exec failed with the params
{"cd"=>"$home", "hook"=>"code", "cmd"=>["sudo -H -E -u discourse git reset --hard",
"sudo -H -E -u discourse git clean -f", "sudo -H -E -u discourse bash -c '\n
set -o errexit
if [ $(git rev-parse --is-shallow-repository) == \"true\" ]; then\n
git remote set-branches --add origin main\n
git remote set-branches origin $version\n
git fetch --depth 1 origin $version\nelse\n
git fetch --tags --prune-tags --prune --force origin\nfi\n'",
"sudo -H -E -u discourse bash -c '\n  set -o errexit\n
  if [[ $(git symbolic-ref --short HEAD) == $version ]] ; then\n
      git pull\n  else\n
      git -c advice.detachedHead=false checkout $version\n  fi\n'",
"sudo -H -E -u discourse git config user.discourse-version $version", "mkdir -p tmp",
"chown discourse:www-data tmp", "mkdir -p tmp/pids", "mkdir -p tmp/sockets",
"touch tmp/.gitkeep", "mkdir -p
/shared/log/rails", "bash -c \"touch -a
/shared/log/rails/{production,production_errors,unicorn.stdout,unicorn.stderr,sidekiq}.log\"",
"bash -c \"ln    -s
/shared/log/rails/{production,production_errors,unicorn.stdout,unicorn.stderr,sidekiq}.log $home/log\"",
"bash -c \"mkdir -p
/shared/{uploads,backups}\"",
"bash -c \"ln    -s
/shared/{uploads,backups} $home/public\"",
"bash -c \"mkdir -p
/shared/tmp/{backups,restores}\"",
"bash -c \"ln    -s
/shared/tmp/{backups,restores} $home/tmp\"",
"chown -R discourse:www-data /shared/log/rails /shared/uploads /shared/backups /shared/tmp",
"[ ! -d public/plugins ] || find public/plugins/ -maxdepth 1 -xtype l -delete"]}
bootstrap failed with exit code 128
** BOOTSTRAP FAILED ** please scroll up and look for earlier error messages, there may be more than one.

如果我没记错的话,这以前是内存不足的情况下的错误。这个虚拟机有多少 RAM/SWAP?

free -h 的输出是什么?

      total       used       free     shared  buff/cache   available
Mem:          7.5Gi       1.0Gi       4.4Gi       6.0Mi       2.1Gi       6.2Gi
Swap:         614Mi          0B       614Mi

从我所能看到的情况来看,这绝对是内存不足。尝试创建一个更大的交换空间(也许 4GB),看看是否能让您重新构建。

1 个赞