Sono solo un recente convertito a Discourse, quindi dopo molti tentativi ed errori ho combinato tutto quanto sopra in un elenco completo comando per comando (grazie a @titusca e @enigmaty).
Spero che questo possa aiutare (o almeno accelerare) i nuovi arrivati a procedere dall’inizio alla fine. Vorrei incorporarlo nel primo post, dato gli aggiornamenti da mysql a mariadb che, secondo me, hanno creato molta confusione nel processo.
Contesto:
- Trasferimento di 1,6 milioni di post.
- Utilizzo di un Droplet Digital Ocean (CPU Optimized 4 vCPU/8GB)
#1 - Installare il droplet Discourse 1-click di Digital Ocean
#2 - Completare l’installazione di Discourse tramite SSH seguendo le istruzioni
Aprire la console SSH
root
(la tua password di root)
(invio)
(iltuodominio).com
(ecc…)
#3 - Accedere a SFTP per caricare il dump del database
sftp root@XXX.XXX.XX.XX
y
yes
(la tua password di root)
put db.sql /var/discourse/shared/standalone/db.sql
#4 - Accedere al nuovo sito Discourse per configurare l’account amministratore
#5 - Accedere via SSH - avviare il processo
ssh root@XXX.XXX.XX.XX
cd /var/discourse
./launcher start app
docker exec -it app bash
sudo apt-get update
sudo apt-get upgrade
y
#6 - Installare MariaDB (sostituto di mysql)
apt-get update && apt-get install mariadb-server-10.3 libmariadbd-dev
y
#7 - Configurazione del database MySQL
service mysql start
mysql -u root -p
password
create database vbulletin;
exit;
#8 - Trasferimento da Vbulletin al database MySQL
mysql -u root -p vbulletin < /shared/db.sql
password
#9 - File GEM
echo “gem ‘mysql2’” >>Gemfile
echo “gem ‘mysql2’, require: false” >> /var/www/discourse/Gemfile
echo “gem ‘php_serialize’, require: false” >> /var/www/discourse/Gemfile
cd /var/www/discourse
su discourse -c ‘bundle install --no-deployment --without test --without development --path vendor/bundle’
(Ignorare il risultato in rosso)
#10 - Configurare lo script di installazione
vi /var/www/discourse/script/import_scripts/vbulletin.rb
#10.a - Apportare le modifiche necessarie al file di testo
DB_HOST ||= ENV[‘DB_HOST’] || “localhost”
DB_NAME ||= ENV[‘DB_NAME’] || “vbulletin”
DB_PW ||= ENV[‘DB_PW’] || “password”
DB_USER ||= ENV[‘DB_USER’] || “root”
TIMEZONE ||= ENV[‘TIMEZONE’] || “America/Los_Angeles”
TABLE_PREFIX ||= ENV[‘TABLE_PREFIX’] || “”
ATTACHMENT_DIR ||= ENV[‘ATTACHMENT_DIR’] || ‘/shared/attachments/’
#10.c - Terminare le modifiche
:wq
#11 - Configurazione di Bundle
bundle config set path ‘vendor/bundle’
bundle config set without ‘development:test’
bundle config unset deployment
su discourse -c ‘bundle install’
#12 - Configurazione di MySQL (potrebbe essere possibile farlo con il passaggio precedente)
mysql --version sudo mysql -u root -p password ALTER USER 'root'@'localhost' IDENTIFIED BY 'password'; FLUSH PRIVILEGES; exit
#13 - Script di installazione
su discourse -c ‘bundle exec ruby script/import_scripts/vbulletin.rb’
Buona fortuna!