He estado experimentando con la instalación de Discourse durante los últimos días tanto en VPS de Layer7 como de Hetzner. No he tenido problemas al instalarlo en Layer7, siguiendo la guía de ‘Instalación con Virtualmin’, y está funcionando muy bien.
Virtualmin también ha lanzado un nuevo módulo de Podman con una receta para Discourse que funciona, aunque tiene algunos errores.
He intentado instalarlo varias veces en la máquina de Hetzner, pero siempre falla al hacer el bootstrap.
He configurado 2 GB de swap, y el VPS tiene 4 núcleos y 8 GB de RAM.
El mensaje de error es el siguiente, y me pregunto si alguien puede orientarme. El comando doctor no ha arrojado mucha luz sobre lo que está pasando, por lo que he podido ver.
Estoy dispuesto a proporcionar registros o salidas de comandos si es necesario.
FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && sudo -H -E -u discourse bash -c '
set -o errexit
git fetch --tags --prune-tags --prune --force origin
if [[ $(git symbolic-ref --short HEAD) == latest ]] ; then
git pull
else
git -c advice.detachedHead=false checkout latest
fi
' failed with return #<Process::Status: pid 179 exit 128>
Location of failure: /usr/local/lib/ruby/gems/3.4.0/gems/pups-1.4.0/lib/pups/exec_command.rb:138:in 'Pups::ExecCommand#spawn'
Location of failure: /usr/local/lib/ruby/gems/3.4.0/gems/pups-1.4.0/lib/pups/exec_command.rb:138:in 'Pups::ExecCommand#spawn'
exec failed with the params {"cd" => "$home", "tag" => "build", "hook" => "code", "cmd" => ["sudo -H -E -u discourse git clean -f", "sudo -H -E -u discourse bash -c '\n set -o errexit\n git fetch --tags --prune-tags --prune --force origin\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\"", "find /shared/log/rails /shared/uploads /shared/backups /shared/tmp ! \\( -user discourse -group www-data \\) -exec chown discourse:www-data {} \\+", "[ ! -d public/plugins ] || find public/plugins/ -maxdepth 1 -xtype l -delete"]}
bootstrap failed with exit code 128
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.
./discourse-doctor may help diagnose the problem.
Salida del Doctor de Disco
==================== MEMORY INFORMATION ====================
RAM (MB): 8127
total used free shared buff/cache available
Mem: 7751 1146 318 8 6604 6604
Swap: 2047 0 2047
==================== DISK SPACE CHECK ====================
---------- OS Disk Space ----------
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 75G 13G 60G 18% /
==================== DISK INFORMATION ====================
Disk /dev/sda: 76.3 GiB, 81923145728 bytes, 160006144 sectors
Disk model: QEMU HARDDISK
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 818C9A1D-5D5F-4F06-9432-7B4B83510711
Device Start End Sectors Size Type
/dev/sda1 528384 160006110 159477727 76G Linux filesystem
/dev/sda14 2048 4095 2048 1M BIOS boot
/dev/sda15 4096 528383 524288 256M EFI System
Partition table entries are not in disk order.
==================== END DISK INFORMATION ====================