Migrer un forum vBulletin 4 vers Discourse

J’ai travaillé comme suit :
en suivant Utilisation du conteneur Docker

  1. Installation standard de Discourse. (discourse/docs/INSTALL-cloud.md at main · discourse/discourse · GitHub).
  2. Téléchargement de mysql docker et transfert de ma base de données vBulletin.
    Je l’ai vérifié en utilisant la commande <root@localhost:/opt/discourse# mysql -h 172.17.0.5 -P 3306 --protocol=tcp -u root -p>.
  3. root@localhost:/opt/discourse#./launcer enter app
  4. apt-get update && apt-get install libmysqlclient-dev mysql-server-5.7 a échoué.
    J’ai donc installé apt-get update && apt-get install libmariadb-dev mariadb-server
  5. Je ne peux pas exécuter mysql sur docker.
root@localhost-app:/var/www/discourse# mysql
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/run/mysqld /mysqld.sock' (2)

Il n’y a pas de mysqld.sock dans tous les répertoires docker. Impossible de trouver avec la commande .

root@localhost-app:/var/www/discourse# sudo service mysql start
mysql: unrecognized service
  1. J’ai consulté https://www.baeldung.com/docker-cant-connect-local-mysql et utilisé l’image docker mysql sur “172.17.0.5”.
gem install mysql2
gem install php_serialize
<gem install mysql2> n'a pas fonctionné tant que libmariadb-dev n'a pas été installé.
  1. Exécuter
su discourse -c 'bundle install --no-deployment --without test --without development --path vendor/bundle'
Il y a eu une erreur, j'ai donc supprimé gemfile.lock et le fichier .bundle et j'ai réessayé.
  1. Après cela, j’ai essayé.
export DB_NAME="vb3" # Changez ceci pour le nom de la base de données VB3.
export DB_USER="root"
export DB_PASSWORD="mypassword"
export DB_HOST="172.17.0.5"
cd /var/www/discourse
su discourse -c 'bundle exec ruby script/import_scripts/vbulletin.rb'

Mais le script génère une erreur.

1: from /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rack-mini-profiler-3.0.0/lib/mini_profiler/profiling_methods.rb:83:in `profile_method'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rack-mini-profiler-3.0.0/lib/mini_profiler/profiling_methods.rb:83:in `alias_method': undefined method `call' for class `Redis::Client' (NameError)
Did you mean?  caller

Comment puis-je corriger cela ?
Merci.