Installation
Shulkr can be installed in several ways depending on your environment.
Quick Install (Linux)
The recommended method for a production server:
bash
curl -fsSL https://raw.githubusercontent.com/sylfaeen/shulkr/main/install.sh | sudo bashThe script will prompt you for the installation directory (default: /opt/shulkr), then:
- Installs Node.js, pnpm, Nginx, and Certbot
- Downloads the latest version of Shulkr
- Generates the
.envfile with your paths and secure random secrets - Configures Nginx reverse proxy and systemd service
- Starts Shulkr automatically
Verify that everything is running:
bash
shulkr statusCustom installation path
You can also set the installation path via environment variable:
bash
curl -fsSL https://raw.githubusercontent.com/sylfaeen/shulkr/main/install.sh | sudo SHULKR_HOME=/srv/shulkr bashManual Installation
1. Clone the repository
bash
git clone https://github.com/sylfaeen/shulkr.git
cd shulkr2. Install dependencies
bash
pnpm install3. Configure the environment
bash
cp .env.example .envEdit the .env file with your paths:
env
SHULKR_HOME=/opt/shulkr
SERVERS_BASE_PATH=/opt/shulkr/servers
BACKUPS_BASE_PATH=/opt/shulkr/backups
DATABASE_PATH=/opt/shulkr/shulkr.db
JWT_SECRET=
COOKIE_SECRET=
SECURE_COOKIES=falseJWT_SECRET and COOKIE_SECRET are automatically generated on first startup if left empty.
4. Build and start
bash
pnpm build
pnpm startDocker Installation
bash
docker run -d \
--name shulkr \
-p 3001:3001 \
-v shulkr-data:/opt/shulkr \
ghcr.io/sylfaeen/shulkr:latestVerification
Open your browser to http://localhost:3001
Default credentials:
- Username:
admin - Password:
admin
IMPORTANT
Change the admin password immediately after the first login!
Next Step
Configuration - Configure your first Minecraft server