JunimoServer makes Stardew Valley multiplayer hosting simple and flexible. Host your farm anytime, anywhere — on your local machine, a VPS, or a dedicated server.
This open-source project enables 24/7 multiplayer farms without needing to keep the game running on your machine. Players can connect at any time without requiring you to be online. With customizable settings, automated backups, and support for larger farms, JunimoServer makes multiplayer management easier than ever.
JunimoServer gives you everything you need to host Stardew Valley:
- Always-On Hosting: Keep your farm running 24/7 without needing to leave the game open.
- Easy Management: Control your server through a simple, web-based interface with admin capabilities.
- Persistent Progress: Protect your crops and ensure your farm continues to thrive, even when no one’s online.
- Automatic Backups: Regularly save your farm so you can easily restore it if something goes wrong.
- Fully Customizable: Change game modes, tweak settings, and optimize performance to fit your needs.
- Mod-Friendly: Supports SMAPI mods to enhance your Stardew Valley experience with customizations and extra content.
- Docker: Install Docker Desktop (Windows/Mac) or Docker Engine (Linux)
- Steam account: A Steam account that owns Stardew Valley (required to download game files)
-
Create Configuration:
Create a new server folder with the config files:
curl -fsSL https://docs.junimoserver.com/install.sh | bash cd junimoserver
On Windows:
powershell -c "irm https://docs.junimoserver.com/install.ps1 | iex", thencd junimoserver.Then edit
.envand configure your server. Here is a minimal example:# Steam Account Details (required for downloading the game server) STEAM_USERNAME="" STEAM_PASSWORD="" # VNC Server (for web-based administration access) VNC_PASSWORD="" # HTTP API key (the server won't start until VNC_PASSWORD and API_KEY are set) API_KEY=""
-
First-Time Setup:
Run the interactive setup to authenticate with Steam:
docker compose run --rm -it steam-auth setup
This will prompt you for Steam Guard authentication if enabled on your account, and downloads the game files. Once Steam can log in without prompts, a fresh server downloads the game files itself on first start.
-
Start the Server:
To start the server as a background process, run
docker compose up -d.To see logs, run
docker compose logs -f. -
Stop the Server:
To save and stop the server, run
docker compose down.Your save files and Steam session are stored in Docker volumes (
savesandsteam-session) and persist across restarts.
When a new version is released, run:
curl -fsSL https://docs.junimoserver.com/update.sh | bashOn Windows: powershell -c "irm https://docs.junimoserver.com/update.ps1 | iex"
This pulls the new image, installs the matching docker-compose.yml, and restarts. Your .env, saves, and settings are untouched. Keep your own compose changes in a docker-compose.override.yml (see Upgrading).
Note: JunimoServer is under heavy development. If the latest stable release isn't working for you, try the preview release — it often contains fixes that haven't been officially released yet. As the project matures, stable releases will become more reliable.
Preview builds are published automatically with every code change. To use a preview release, add this to your .env file:
# Use the latest preview build
IMAGE_VERSION=previewTo switch back to stable releases, remove the line or set it to latest:
IMAGE_VERSION=latestAfter changing the version, run the update command above — it pulls the matching image and docker-compose.yml for whichever IMAGE_VERSION you set (stable, preview, or pinned).
You can also pin to a specific version (e.g., IMAGE_VERSION=1.0.0 or IMAGE_VERSION=1.1.0-preview.3). Check Docker Hub for available tags.
Explore the full documentation to get started. Here's what you'll find:
- Getting Started: Step-by-step instructions on setting up and managing your server.
- Server Guide: Learn how to use and manage your server.
- Community: Find out how to get involved and get help.
JunimoServer is free and open-source, maintained in spare time. If it keeps your farm running and you'd like to give something back, donations help cover server/hosting costs and development time — entirely optional, always appreciated. 🌱
- GitHub Sponsors — monthly or one-time, 100% goes to development.
- Ko-fi — buy the project a coffee (one-time, PayPal or card).
Not in a position to donate? Starring the repo, reporting bugs, improving the docs, or helping others on Discord helps just as much.