Manually specifying the java folder so that ANT is accessible without install needed
Open RSC Docker Home
An easy to run RSC private server environment using Docker that works in Windows, Mac, and Linux.
Choices:
- Single player RSC game + basic database editing (PHPMyAdmin)
- Game + Website + PHPMyAdmin
- Game + Website + PHPMyAdmin + RSC Preservation Wiki
Operating systems supported
-
Windows 10 x64 (Not Windows 7)
-
Mac OS X High Sierra
-
Ubuntu Linux 18.04 x64
-
Fedora Linux 28 x64
-
CentOS 7 x64
Choice 1: Download the zip, extract it, and open the "Docker-Home" folder
https://github.com/Open-RSC/Docker-Home/archive/master.zip
Choice 2: Clone the project with git
Install Git, then clone the project:
git clone https://github.com/Open-RSC/Docker-Home.git
Important for Windows users!
Open Docker and make your drives available to your Docker containers:
Run the scripts
-
Perform the first time setup:
Mac/Linux: ./Setup_Linux_Mac.shWindows: "Setup_Windows.cmd" -
Open your favorite browser:
- http://localhost (username: Marwolf, password: malware)
- http://localhost:8080 PHPMyAdmin (username: root, password: root)
- http://localhost/wiki (username: Marwolf, password: openrscpassword)
-
Start the game's Docker containers, then run the game server and client:
Mac/Linux: ./Start_Single_Player_Game_Linux_Mac.shWindows: "Start_Single_Player_Game_Windows.cmd" -
Backup game databases:
Mac/Linux: ./Backup_Game_Databases_Linux_Mac.shWindows: "Backup_Game_Databases_Windows.cmd" -
Restore game databases:
Mac/Linux: ./Restore_Game_Database_Backup_Linux_Mac.shWindows: "Restore_Game_Database_Backup_Windows.cmd" -
View the game's Docker container logs:
./View_Docker_Container_Logs_Linux_Mac.shWindows: "View_Docker_Container_Logs_Windows.cmd" -
Stop the game's Docker containers and shut down the game server:
Mac/Linux: ./Stop-Game-Linux_Mac.shWindows: "Stop_Game_Windows.cmd"
Ready to host a public version on your own VPS?
You will need to edit:
-
PHPMyAdmin's MySQL users
-
Create a new user in PHPMyAdmin, grant permissions, remove existing users.
-
Secure your users by making them only accessible from specific hostnames
-
Each Docker container will have it's own assigned internal IP address.
-
Examples:
-
openrsc_forum @ 172.18.0.3 (only accessible via Nginx Docker container)
-
openrsc_game @ 172.18.0.1 (only accessible via locally running Open RSC game server)
-
Marwolf @ 172.18.0.4 (only accessible via PHPMyAdmin Docker container)
-
-
Avoid: % for any host (risks allowing remote brute force MySQL server attacks)
-
-
Launcher's main.java
-
Edit: /Docker-Home/Game/Launcher/src/Main.java
- Replace with your domain / IP: private static String URL = "http://localhost";
-
-
Client's config.java
-
Edit: /Docker-Home/Game/client/src/org/openrsc/client/Config.java
- Replace with your domain / IP: public static String IP = "localhost";
-
-
Server's config.xml
-
Edit: /Docker-Home/Game/server/config/config.xml
-
Replace with your newly created SQL username: root
-
Replace with your newly created SQL user pass: root
-
-
-
Website's board/config.php
-
Edit: /Docker-Home/Website/board/config.php
-
Replace with your newly created SQL username: $dbuser = 'root';
-
Replace with your newly created SQL user pass: $dbpasswd = 'root';
-
-
-
Website's client.zip file
-
Compile changes for your client and compress "Open_RSC_Client.jar" as client.zip
-
Location: /Docker-Home/Game/client/dist/Open_RSC_Client.jar
-
Copy result to: /Docker-Home/Website/downloads/client.zip
-
-
-
Website's downloads/hashes.txt
-
Edit: /Docker-Home/Website/downloads/hashes.txt
-
Replace with updated md5sum hashes of your client.zip and cache.zip (likely you only will replace client.zip)
-
Obtain MD5sum via md5sum *.zip
-
-
