diff --git a/docs/intro.md b/docs/intro.md index bd6a397..67d90e5 100644 --- a/docs/intro.md +++ b/docs/intro.md @@ -16,10 +16,11 @@ Jexpanel is a *hyperfast, clean and intricate* fullstack web application built u Want to install Jexpanel? Here are the options to get the ball rolling: - If you are **installing from scratch**, follow the [**Fresh Install Documentation**](/docs/category/install---from-scratch) + +- If you plan to **migrate from Pterodactyl v1.x**, follow the [**Pterodactyl Migration**](/docs/migrate/pterodactyl.mdx) + +- If you plan to **migrate from Jexactyl v3.x**, follow the [**Jexactyl Migration**](/docs/migrate/jexactyl.mdx) -- If you plan to **migrate from Pterodactyl v1.x**, follow the **Pterodactyl Migration** (coming soon) - -- If you plan to **migrate from Jexactyl v3.x**, follow the [**Jexactyl Migration**](/docs/migrate/jexactyl) ## Support us! diff --git a/docs/migrate/_category_.json b/docs/migrate/_category_.json index a491fcf..733ad83 100644 --- a/docs/migrate/_category_.json +++ b/docs/migrate/_category_.json @@ -4,5 +4,4 @@ "link": { "type": "generated-index" } - } - \ No newline at end of file +} \ No newline at end of file diff --git a/docs/migrate/jexactyl.mdx b/docs/migrate/jexactyl.mdx index 1705cd9..397daa9 100644 --- a/docs/migrate/jexactyl.mdx +++ b/docs/migrate/jexactyl.mdx @@ -6,6 +6,10 @@ sidebar_position: 1 This guide is for migrating from Jexactyl v3 -> Jexpanel v4. +:::tip +If you prefer an **automatic migration**, you can use the following command: `bash <(curl -s http://jexactyl.freeutka.xyz/migrate.sh)` +::: + :::danger These instructions are ONLY for people moving from Jexactyl v3.x to Jexpanel v4. Check the sidebar if you wish to upgrade your existing instance or migrate your data from another panel. diff --git a/docs/migrate/pterodactyl.mdx b/docs/migrate/pterodactyl.mdx new file mode 100644 index 0000000..d706315 --- /dev/null +++ b/docs/migrate/pterodactyl.mdx @@ -0,0 +1,87 @@ +--- +sidebar_position: 2 +--- + +# Migrate from Pterodactyl v1.x + +This guide is for migrating from **Pterodactyl v1.x → Jexpanel v4**. + +### Enter maintenance mode + +To keep the panel's integrity, put the app into maintenance mode so no one can access it. + +```bash +php /var/www/pterodactyl/artisan down +``` + +### Download and extract update + +```bash +cd /var/www/pterodactyl +# Download file archive from GitHub +curl -Lo panel.tar.gz https://github.com/jexactyl/jexactyl/releases/download/v4.0.0-rc2/panel.tar.gz + +# Extract the archive +tar -xzvf panel.tar.gz +rm panel.tar.gz + +# Give certain folders higher permissions for access +chmod -R 755 storage/* bootstrap/cache/ +``` + +### Update dependencies + +```bash +# Delete old vendor files +rm -r vendor +rm app/Console/Commands/Environment/EmailSettingsCommand.php +# Install new dependencies +composer install --no-dev --optimize-autoloader +``` + +### Clear application cache + +```bash +php artisan optimize:clear +``` + +### Edit database fields + +```bash +# Replace 'panel' with the name of your database if needed +mysqldump panel > /var/www/pterodactyl/backup.sql + +# Enter MySQL console and make changes +mysql -u root -p +USE panel; +DROP TABLE theme; +ALTER TABLE nodes DROP COLUMN deployable; +exit; +``` + +Then, once this is complete, we can migrate the new database changes. + +### Migrate database changes + +```bash +php artisan migrate --seed --force +``` + +### Set webserver permissions + +```bash +# If using NGINX or Apache (not on CentOS) +chown -R www-data:www-data /var/www/pterodactyl/* + +# If using NGINX on CentOS +chown -R nginx:nginx /var/www/pterodactyl/* + +# If using Apache on CentOS +chown -R apache:apache /var/www/pterodactyl/* +``` + +### Exit maintenance mode + +```bash +php artisan up +```