Manual Installation
Requirements: Node.js
Clone 4ga Boards repository into a directory of your choice. (e.g. /var/www/4gaBoards)
mkdir -p /var/www/4gaBoards
cd /var/www/4gaBoards
Clone latest version (Not recommended - beta-latest version)
git clone https://github.com/RARgames/4gaBoards.git .
Clone specific version (e.g. 3.3.11)
git clone --branch v3.3.11 https://github.com/RARgames/4gaBoards.git .
To later update it to next version, use:
git fetch --tags
git checkout v3.3.12
Install dependencies
pnpm i
Build deps
pnpm packages:build
Build client
pnpm client:build
Copy build to the server directory
cp -r client/build/. server/public
cp client/build/index.html server/views/index.ejs
Copy environment variables file
cp server/.env.sample server/.env
Configure environment variables (You could use nano, vim, etc. to edit .env file)
nano server/.env
Edit BASE_URL to match your domain name or IP address.
Edit SECRET_KEY with a random value. You can generate it by openssl rand -hex 64.
Edit DATABASE_URL with database url in the following format: postgresql://<username>:<password>@<host>/<database_name>.
Note: Before continuing, make sure your selected database is created and running.
Manual Postgres Installation and Setup
If you want to use Redis for upload rate limiting, also configure these variables in .env:
UPLOAD_RATE_LIMIT_STORE=redisUPLOAD_RATE_LIMIT_REDIS_URL=redis://:<password>@<host>:6379/0
For Redis deployment, run Redis on your server and ensure it is reachable from 4ga Boards.
Copy start script from the root directory to the server directory and start the server.
cp start.sh server
cd server
chmod +x start.sh
./start.sh
Default 4ga Boards url: http://localhost:1337
Default user: demo
Default password: demo
Additional Links:
4ga Boards Professional Hosting