Insax / palworld-admin-tool

Web admin tool for Palworld
2 stars 1 forks source link

Palworld Admin Tool

Description

An Admin tool receives information via rcon and displays them.

Overview

  1. Installation Variations
  2. Installation via Release (1 click install)
  3. Full Installation
    1. Prerequisites full Installation
    2. Install Steps
  4. Updating

Installation Variations

You can install this tool in the following ways

Installation via Release

:warning: This way of installing does not support updating your installation and has limitations.

This way of installing provides a fully working instance for testing purposes, its not meant to be used in real production.

If you like it go for the docker version or the full install.

Steps

  1. Download the release as zip and extract it somewhere
  2. Run the script install-start.ps1 using powershell.
  3. Visit http://localhost

:warning: Once again, this is more of a Test installation than anything else.

Full Installation

This will provide you with everything to update or develop the app yourself.

Prerequisites Developer/Full Installation

This application has some requirements that must be fullfilled in order to for everything to work properly.

  1. PHP 8.1 with the following extensions enabled:**
    • ctype
    • curl
    • dom
    • fileinfo
    • filter
    • hash
    • mbstring
    • openssl
    • pcre
    • pdo
    • session
    • tokenizer
    • xml
    • sqlite
  2. composer (https://getcomposer.org/)
  3. npm (20 or higher) https://nodejs.org/en/download
  4. Supervisord or an equivalent http://supervisord.org/
  5. Nginx or an equivalent https://nginx.org/en/download.html
  6. [Optional] Any Mysql or Postgres Database, alternatively sqlite can be used.

Installation Steps

  1. Clone the repository

    git clone https://github.com/Insax/palworld-admin-tool.git
    cd palworld-admin-tool
  2. Install necessary packages using composer and npm

    composer install --no-dev
    npm install
  3. Compile assets

    npm run build
  4. Copy .env.example to .env and adjust the DB_HOST, DB_PORT, DB_USER, DB_DATABASE, DB_PASSWORD so it matches your setup

    1. If you would like to use SQLITE set DB_CONNECTION to sqlite and delete the DB_DATABASE line.
    cp .env.example .env
  5. Create the database tables in your already created database.

    php artisan migrate --force
  6. Generate an application key

    php artisan key:generate
  7. Create a job in supervisor or an equivalent tool that auto restarts and runs

    php artisan short-schedule:run
  8. Configure your webserver, the content root is in public

Updating

Rerun steps 2 - 5

Running Tests

We don't do that here.