This project provides a complete Docker Compose setup for hosting a Satisfactory dedicated server with an easy-to-use web admin panel. It allows for simple management of savegames and blueprints.
- Satisfactory Dedicated Server: Run your own Satisfactory server using Docker
- Web Admin Panel: Custom administrative interface for server management
- File Management: Easy upload and management of savegames and blueprints
- Resource Control: Configurable memory limits for server performance
- Docker and Docker Compose
- 6GB+ RAM recommended for server operation
- Open UDP ports 7777, 15000, and 15777 on your firewall/router
-
Clone this repository:
git clone https://your-repository-url/satisfactory-server.git cd satisfactory-server
-
Start the server:
docker-compose up -d
-
Access the admin panel:
- URL: http://YOUR_SERVER_IP:3000
- Default login:
- Username: admin
- Password: satisfactory
- Satisfactory Server: Connect via the game using port 7777 (UDP)
- Admin Panel: http://YOUR_SERVER_IP:3000
Admin panel provides an interface for:
- Uploading savegames
- Switching between different saves
- Creating backups
Savegame files are stored in ./satisfactory-data/saved/SaveGames/
You can manage blueprints through the admin panel or by directly placing files in:
./satisfactory-data/saved/Blueprints/
Edit the docker-compose.yml
file to modify:
MAXPLAYERS
: Maximum number of concurrent players (default: 4)TZ
: Timezone setting (default: Europe/Berlin)STEAMBETA
: Enable beta versions (default: false)- Memory limits (default: 6GB limit, 4GB reservation)
Important: The default admin configuration is defined in the .env
file (copy from .env.example
):
PORT=3000
SESSION_SECRET=satisfactory-secret-change-this-in-production
DEFAULT_ADMIN_PASSWORD=satisfactory
For production use, you should change these values.
To set up your environment:
- Copy the
.env.example
file to.env
in the root directory - Modify the values to secure your installation
- Restart the admin panel container to apply changes
├── .env # Environment configuration (copied from .env.example)
├── .env.example # Example environment configuration template
├── docker-compose.yml # Docker Compose configuration
├── satisfactory-admin-panel/
│ ├── Dockerfile # Admin panel Docker configuration
│ ├── package.json # Node.js dependencies
│ ├── src/ # Server source code
│ └── public/ # Web assets
└── satisfactory-data/ # Game data (mounted into container)
├── saved/ # Savegames and blueprints
├── logs/ # Server logs
└── backups/ # Automated backups
Regular backups are stored in the ./satisfactory-data/backups/
directory.
To update the server:
docker-compose pull
docker-compose up -d
Common issues:
-
Server not visible in-game
- Verify UDP ports 7777, 15000, and 15777 are properly forwarded
- Check server logs:
docker-compose logs satisfactory-server
-
Performance issues
- Increase memory allocation in docker-compose.yml
- Monitor server resource usage
This project is distributed under the MIT license.