Cuando estuve en China, quise cambiar la fuente del espejo de gemas. En el fork de discourse-ai, modifiqué la información de la fuente del espejo de gemas en Gemfile y gemfile. lock, pero la visualización del registro todavía se descargaba de https://rubygems.org/. ¿Cómo hacer que la instalación de gemas en discourse-ai use la fuente de imagen de gemas modificada en web.china.template.yml
I, [2023-11-10T04:40:17.388494 #1] INFO -- :
> cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
ERROR: While executing gem ... (Gem::RemoteFetcher::FetchError)
IOError: HTTP session not yet started (Gem::RemoteFetcher::FetchError)
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/remote_fetcher.rb:266:in `rescue in fetch_path'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/remote_fetcher.rb:246:in `fetch_path'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/remote_fetcher.rb:294:in `cache_update_path'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/remote_fetcher.rb:161:in `rescue in download'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/remote_fetcher.rb:146:in `download'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/source.rb:212:in `download'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/resolver/specification.rb:113:in `download'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/resolver/specification.rb:99:in `install'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/request_set.rb:281:in `block in install_into'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/request_set.rb:273:in `each'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/request_set.rb:273:in `install_into'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/request_set.rb:148:in `install'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/commands/install_command.rb:215:in `install_gem'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/commands/install_command.rb:231:in `block in install_gems'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/commands/install_command.rb:224:in `each'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/commands/install_command.rb:224:in `install_gems'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/commands/install_command.rb:170:in `execute'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/command.rb:328:in `invoke_with_build_args'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/command_manager.rb:253:in `invoke_command'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/command_manager.rb:193:in `process_args'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/command_manager.rb:151:in `run'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/gem_runner.rb:56:in `run'
/usr/local/bin/gem:12:in `<main>'
I, [2023-11-10T04:49:21.015453 #1] INFO -- : gem install tokenizers -v 0.3.3 -i /var/www/discourse/plugins/discourse-ai/gems/3.2.2 --no-document --ignore-dependencies --no-user-install
You are specifying the gem tokenizers in /var/www/discourse/plugins/discourse-ai/plugin.rb, however it does not exist!
Looked for:
- /var/www/discourse/plugins/discourse-ai/gems/3.2.2/specifications/tokenizers-0.3.3.gemspec
- /var/www/discourse/plugins/discourse-ai/gems/3.2.2/specifications/tokenizers-0.3.3-x86_64-linux.gemspec
- /var/www/discourse/plugins/discourse-ai/gems/3.2.2/specifications/tokenizers-0.3.3-x86_64-linux.gemspec
FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' failed with return #<Process::Status: pid 885 exit 255>
Location of failure: /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
bootstrap failed with exit code 255
** 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.
7d6d7efb62fe5cd8f1d85af89fb43a28089d4d91449fec274758f1c5ba2a589d
sudo ./launcher bootstrap web_only, este error se encuentra a menudo
Gracias por la solución, ya se ha resuelto. Añadiendo esto en la configuración de *.yml, también se resolvió el problema de que el sitio web de la biblioteca registry.yarnpkg.com no tenía un certificado SSL válido, lo que impedía la descarga de bibliotecas relacionadas.
ruby-china.com no es omnipotente, es posible que te encuentres con otros problemas más adelante (me encontré con uno, parece que ruby-china.com no actualizó las dependencias relevantes, lo que causó problemas, pero no tomé notas de los registros relevantes, no puedo recordarlo específicamente)
Ya veremos
Efectivamente, existe una diferencia entre las versiones de los repositorios de dependencias acelerados y la versión oficial. Al cambiar a un repositorio acelerado, como los de la Universidad de Ciencia y Tecnología de China (USTC), Tsinghua o Alibaba, la diferencia de versión con Tsinghua es menor. La USTC tiene la velocidad más rápida. Mi servidor está en una red privada, y el servidor de red pública solo se utiliza para reenvío de datos, lo que reduce los costos generales. El costo del servidor es de 14 yuanes al mes, con 2 núcleos (vCPU), 512 MB de RAM, 20 GB de almacenamiento y un ancho de banda de 80 Mbps/s (pago por uso).
Veo que tu foro es bueno, parece estar relacionado con la medicina. Nosotros tenemos un foro de tecnología informática que permite el uso de ChatGPT en China. Si estás interesado, podemos autorizarte a usarlo.