Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallOutdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchThe reliable pattern is a Docker-capable VPS running the factoriotools/factorio image with a host directory mounted at /factorio. Publish UDP port 34197 for gameplay, keep TCP 27015 unpublished unless you need remote RCON, and give the mounted directory to the image’s Factorio user (UID 845). Because saves, settings, mods and access lists live on the host, you can replace the container without deleting your world.
Antihost offers Linux VPS plans with full root access, unlimited traffic on a 1 Gbps port and a 14-day free trial.
What the Docker deployment actually provides
A Factorio container is disposable; its writable layer can disappear when you remove or recreate it. The world is not disposable if the container’s /factorio directory is backed by a VPS directory such as /opt/factorio. That mount becomes the durable home for the server’s configuration, save archives, mods, RCON password and player access files.
As an Amazon Associate I earn from qualifying purchases.
The image’s documented quick-start configuration uses a named container, an automatic restart policy and one published game port. Docker handles the process lifecycle while the VPS supplies storage, firewall rules, inbound networking and backups. This separation lets you pull a newer image, recreate the container and keep the same Factorio data directory.
VPS and network requirements
Choose a VPS that permits Docker and gives you control over both its operating-system firewall and the provider’s security group or network firewall. The server needs persistent disk space for saves and mods, SSH or equivalent administrative access, and a way to make verified backups or snapshots. CPU and memory requirements depend on map size, simulation settings, player count and mods; the supplied image documentation does not define a universal minimum, so monitor actual load rather than treating a generic plan size as a guarantee.
#1 Best Overall
- [Ultra-Lightweight Ear Buds Designed for Small Ears] Each earbud weighs only 3.7g and features a compact, ergonomic in-ear design made especially for small ears. Secure, low-profile, and comfortable for workouts, all-day wear or overnight sleeping.The ultra-slim profile sits flush in your ear with no hard edges poking or rubbing, so you can even sleep on your side without discomfort.
- [Immersive Stereo Sound with TOZO OrigX Technology] TOZO OrigX tuning delivers clear vocals, balanced mids, and natural stereo sound for music, podcasts, and videos.
- [Long Battery Life for Daily Use] Get up to 7 hours of playtime on a single charge, with up to 32 hours total using the charging case—ideal for workdays, commuting, and extended listening sessions.
- [Bluetooth 5.3 & Stable Connection] Bluetooth 5.3 provides fast pairing, stable wireless performance, and reduced dropouts as you move around home or office.
- [Deep Bass with Clear Vocals] High-performance drivers produce punchy bass while keeping vocals clean and detailed for everyday listening.
| Purpose | Protocol and port | Where to allow it | Notes |
|---|---|---|---|
| Factorio multiplayer traffic | UDP 34197 | VPS firewall and provider security group | This is the default game port used by the image and identified in Factorio’s multiplayer documentation. |
| RCON administration | TCP 27015 | Only if remote RCON is required | The image can use RCON through docker exec without publishing this port. If exposed, restrict its source addresses. |
| Administration | SSH port chosen by your VPS setup | VPS firewall and provider security group | Keep administrative access separate from the game and RCON rules. |
Do not open TCP 34197 in place of UDP, and do not assume a Docker port mapping overrides a provider-level block. A player can reach the server only when all three layers agree: the Factorio process is listening, Docker publishes the correct protocol, and both external firewalls permit it.
Prepare the host directory and permissions
Create the persistent directory before starting the container. The documented image runs Factorio as UID 845, so ownership must allow that user to create saves, logs and configuration files.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →sudo mkdir -p /opt/factorio
sudo chown 845:845 /opt/factorio
Do not substitute a directory inside the container for this host path. If you later remove a container that has no host mount, Docker can remove the only copy of your world. The host directory should also be included in your VPS backup plan, with special attention to saves and config.
Launch the server with Docker
Run the documented single-container deployment:
sudo docker run -d
-p 34197:34197/udp
-v /opt/factorio:/factorio
--name factorio
--restart=unless-stopped
factoriotools/factorio
The -p option publishes only the gameplay port. The -v option binds the host directory to the path expected by the image. --restart=unless-stopped starts the server again after a reboot or an otherwise recoverable Docker restart, while still allowing you to stop it intentionally. The name makes subsequent log, stop and exec commands unambiguous.
After starting, confirm that Docker created the container and read its startup output:
Rank #2
- 【IP68 Waterproof Multifunctinal Smart Watch】Torjalph fitness activity tracker smart watch is IP68 waterproof technology ,you can wear it when swimming,handwashing,it's rain-proof which means that you perform multiple exercise modes outside without worrying about sweat or rain corroding your fitness smart watch,and this watch equipped with a 230 mAh large capacity battery magnetic charging ,and this sports activity tracker watch can be used 5-7 days If fully charged.
- 【Larger 1.83'' Full Screen Watch & Multi-dial Selection】1.83 inch full HD color touch screen smart watch for men / women provides excellent 240*284 resolution image quality ,This Bluetooth smart watch offers a better touch experience and remarkable immersion and ,more than 200 watch faces for you to choose from App"Da Fit ", you can change the dial style according to your mood to wear keeping the world on your wrist
- 【Accurate Activity Tracker Smart Watch 】sports watch activity tracker uses sweat and dust resistant breathable silicone strap, our Fitness Tracker Smart Watch for Android iOS Phones supports 12 sports modes,walking,running,bicycle,swimming,badminton,basketball,football,rope skipping. This bluetooth calls smart watch for men women is lightweight and stylish, bringing more convenient and relaxing sports experience while also providing more protection.
- 【Your 24 Hour Personal Daily Health Monitor】Fitness watch for women men full touch screen IP67 waterproof bluetooth smartwatch for Android iOS Phones with heart rate blood pressure monitor multifunction Andriod smart watch with steps counter sleep monitor sports fitness watch, monitoring blood oxygen saturation allows you to understand your physical condition in real time to track fitness progress ,to know your health status in time.
- 【More Functions Bluetooth Call Smart Watch】This fitness activity smart watch full screen for iPhone and Android phones includes a bunch of new features including:The bluetooth smart watch can hang up the phone, receive and display WhatsAPP /Text /Facebook /Twitter /Messenger reminder.Support sedentary reminder, alarm clock, stopwatch, timer,weather information,music control, remote camera control compatible with Android 5.0 and above or iOS 9.0 and above smartphones.
sudo docker ps
sudo docker logs factorio
Use the logs to identify first-boot map generation, configuration errors, permission failures or a process that exited immediately. A running container is not proof that players can connect; test the port from the game client after opening UDP 34197 in both firewall layers.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Understand the files created on first boot
The documented image creates its data under the mounted directory. A first start generates a map named _autosave1.zip. On later starts, the default behavior is to load the newest save.
Path under /opt/factorio |
Purpose |
|---|---|
config/server-settings.json |
Server name, description, player and gameplay-related server settings. |
config/map-gen-settings.json |
Terrain and resource generation parameters for newly generated maps. |
config/map-settings.json |
Simulation and map behavior settings. |
config/rconpw |
RCON credential file used by the image’s server configuration. |
config/server-whitelist.json |
Players permitted when a whitelist is enabled. |
config/server-banlist.json |
Players blocked from joining. |
config/server-adminlist.json |
Players granted administrator privileges. |
mods |
Factorio mod files used by the server. |
saves |
Save archives, including autosaves and named worlds. |
Edit the JSON files on the host, then restart the container so the server reads the changes. Keep valid JSON syntax; a malformed settings file can prevent startup or cause the image to fall back to its defaults. Stop the server before making changes that must be applied atomically, especially when replacing mods or save archives.
Choose which save the container loads
Use the newest save automatically
With the default image behavior, subsequent starts load the newest save in the mounted saves directory. This is convenient for an unattended VPS because a restart normally returns players to the latest autosave.
Load a specific existing save
Set LOAD_LATEST_SAVE=false and provide SAVE_NAME for the archive you want the server to open. The name must correspond to the save filename in /opt/factorio/saves; inspect that directory rather than guessing when several worlds exist. Apply the variables using the image’s documented configuration method, then recreate or restart the container as required by that image version.
Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Clear out junk files and repair common Windows errors3Scan for outdated or missing drivers - takes under a minuteRank #3
- [Low Noise High Fidelity] New bee guitar cord with 22AWG oxygen-free-copper center conductors provides enhanced signal transfer, the PVC insulation material and the high-density stranded copper double shield provide noise rejection for quiet operation
- [Ideal for Choice] New bee 1/4 straight and right angle metal connectors, ensures a secure connection in any instrument, pedal, or amp jack. L shape great fro on stage guitar stands
- [Wide Compatible] Suitable for mixer, power amplifier, microphone, effector, decoder, equalizer, electoronic organ, electric guitar, electric bass and other electronic equipments. Widely used in the installation of smart home, karaoke speaker, professional stage audio, etc
- [Easy Disassemble] Making incidental repairs quick and easy! Very nice, flexible cable
- [Dont Hesite to Order] 24 hours customer services and professional technology team are standing by
Generate a fresh map
Set GENERATE_NEW_SAVE=true together with SAVE_NAME. You can also set PRESET when you want a map-generation preset. A new map uses the generation files present at startup, so decide on map-gen-settings.json and the preset before launching it. Generating a new save does not replace an older archive unless you deliberately use the same name and manage the existing file.
Configure the server after first boot
Open /opt/factorio/config/server-settings.json on the VPS with your preferred editor. Change the server identity and gameplay options there rather than baking edits into a container layer. Restart the container after saving the file and check docker logs factorio for confirmation that the server accepted it.
Use the access-list files for administration:
- Add approved players to
server-whitelist.jsonwhen you want to restrict entry. - Place unwanted players in
server-banlist.json. - Grant trusted operators entries in
server-adminlist.json.
Mods belong in /opt/factorio/mods. The server and connecting clients must use compatible mod sets and versions. Stop the server before changing a mod set, retain a backup of the previous files, and test the world after restarting. A mod update can change save compatibility even when the Docker image itself has not changed.
Use Docker Compose when configuration should be declarative
Compose stores the container definition in a file that can be reviewed, copied and recreated consistently. The documented pattern keeps the same host mount and game port:
services:
factorio:
image: factoriotools/factorio
ports:
- '34197:34197/udp'
volumes:
- /opt/factorio:/factorio
restart: unless-stopped
Save this as a Compose file in a directory you control, then operate the service from that directory. The important safety property is not Compose itself; it is that every recreation continues to mount /opt/factorio. A Compose file that omits the volume can still start successfully while creating a new, empty world inside the container.
Rank #4
- Digital Family Calendar: BSIMB digital calendar wall touch screen puts an end to your chaotic life. Designed for busy families, the digital calendar keeps you organised and in step with your family. Assign different colours and tasks to each family member to make family scheduling easier and more intuitive.
- Easy Setup and Auto-Sync: Plug in, connect to WLAN and auto-syn your electric calendar in minutes. Digital wall calendar compatible with Google calendar, iCloud calendar, Outlook calendar, Cozi calendar and Yahoo calendar. Add events directly on the device or through the ecalendar app. Electronic calendar stays current whether you're at work or traveling—no manual updates needed.
- All-In-One Home Assistant: Smart calendar builds habits and encourage independence with personalised chores. Display daily meal plan to reduce the daily ‘What's for dinner?’ stress. To-do lists keep track of everything you want. Turning chores into valuable achievements with stars and rewards, making life easier and more enjoyable.
- Manage Anytime Anywhere: BSIMB electronic calendar for family stay connected with the powerful ecalendar app. Access and manage your digital wall calendar anytime, anywhere with free features like stars & rewards, photo screensaver, chore charts, meals plans, to-do lists etc. Electronic planner paid features like Magic Import tailor advanced tools for users with special needs.
- Stay in Touch with Loved Ones: Share photos or videos from your phone to electronic wall calendar with app, instantly update your life moment, and keep in touch with your family, especially those who are far away; you can also surprise your smart calendar digital wall by sending him a wish card; it's also great for keeping tech-illiterate elders in touch with the youngsters.
For production, pin an image tag after checking compatibility with your Factorio save and mods instead of relying indefinitely on a moving default tag. Keep the previous image reference so you can roll back if the new image changes startup behavior or exposes an incompatibility.
| Consideration | Direct docker run |
Compose |
|---|---|---|
| Persistent data | Explicit -v /opt/factorio:/factorio on every recreation. |
Declared once in the Compose file and reused by service operations. |
| Port mapping | Explicit -p 34197:34197/udp. |
Declared under ports. |
| Restart policy | --restart=unless-stopped. |
restart: unless-stopped. |
| Version control | Image reference is part of each command. | Image tag is recorded in the service definition and can be pinned for rollback. |
| Best fit | A quick, transparent one-container deployment. | A repeatable server definition that you expect to edit or maintain over time. |
Enable RCON without creating an unnecessary exposure
RCON is optional TCP administration on port 27015. The image documentation states that you can use RCON through docker exec without publishing the port, which is the safer default when administrators can log in to the VPS. In that arrangement, leave out any 27015 port mapping and do not open it in either firewall.
Free tools Windows power users keep installed
One-click scans. No signup required.
If remote RCON is genuinely needed, publish TCP 27015 deliberately and apply all of these controls:
- Set a long, unique password in the image’s RCON password file at
/opt/factorio/config/rconpw. - Restrict inbound TCP 27015 to known administrator IP addresses in the VPS firewall and provider security group.
- Avoid binding the service to an unrestricted public interface when the image’s bind settings allow a narrower address.
- Review logs and remove the public mapping when remote access is no longer necessary.
Factorio’s headless server supports explicit controls for the RCON port, bind address and password. Those controls are useful when diagnosing a custom entrypoint or a port conflict, but they do not replace network-level restrictions.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Open the firewall and test connectivity
- Allow inbound UDP 34197 in the operating-system firewall.
- Create the matching inbound rule in the VPS provider’s security group or network firewall.
- Confirm Docker shows
34197/udpin the container’s published ports. - Read
docker logs factorioand verify that the Factorio process started without an error. - Connect from a Factorio client using the VPS address and the configured game port.
Do not use a TCP-only port test to validate the game path; gameplay is UDP. If the client cannot connect, check the provider rule first, then the host firewall, then Docker’s protocol suffix, and finally the server logs. A server listening on a private or incorrect bind address can also appear healthy locally while remaining unreachable from the Internet.
Best Value
Back up correctly before an image or mod upgrade
The image documentation’s operational rule is direct: “Before upgrading backup the save.” A safe upgrade preserves both the world and the configuration that makes it load correctly.
- Announce maintenance and stop the running container so no save is being written during the copy.
- Copy
/opt/factorio/savesand theconfigdirectory to separate storage. Include themodsdirectory when the world depends on a specific mod set. - Verify that the copied archives can be read and that the backup is outside the VPS disk being upgraded.
- Pull or select the new image version, keeping the previous image reference available for rollback.
- Recreate the container with the identical host mount, UDP mapping and restart policy.
- Inspect startup logs, connect with a client, and confirm that the expected save, settings and mods loaded.
- Keep the old image and the pre-upgrade backup until players have checked the world.
Removing a container is safe only when the world is on the host mount and backed up. Removing a container that stored data solely in its writable layer can destroy that data.
Use the headless command controls when diagnosing problems
Factorio’s headless server command reference exposes flags for the same areas controlled by the image entrypoint: --start-server, --port, --bind, --rcon-port, --rcon-bind, --rcon-password, --server-settings, whitelist, banlist, admin-list and console-log parameters. These options help you identify whether a failure comes from Factorio itself, the container wrapper or the network.
When troubleshooting, compare the effective command-line settings with the files in /opt/factorio/config. A custom port or bind address must agree with the Docker mapping and both firewall layers. A custom server-settings path must point to a file that exists inside the mounted /factorio tree.
Troubleshoot by symptom
Players cannot connect
- Confirm UDP 34197 is allowed in both the VPS firewall and provider security group.
- Check that Docker publishes
34197:34197/udp, not a TCP mapping. - Read the container logs for startup or bind errors.
- Verify the server is listening on the expected port and address.
The server loads the wrong world
- List the files in
/opt/factorio/savesand check their names. - Review
LOAD_LATEST_SAVEandSAVE_NAME. - Ensure a fresh-map setting such as
GENERATE_NEW_SAVE=truewas not left enabled after initial creation.
The container reports permission errors
Recheck ownership of the complete mounted tree. The documented Factorio UID is 845, so a directory owned by an unrelated host user may prevent creation of saves, logs or configuration. Correct ownership, restart the container and inspect the logs again.
RCON does not work
- Check that
config/rconpwexists and contains the intended credential. - Determine whether you are using the image’s local
docker execpath or an intentionally published TCP port. - If remote, verify TCP 27015 is published and permitted only from the administrator’s source IP.
- Confirm that the RCON bind and password settings agree with the container’s effective headless configuration.
A modded save fails after an update
Restore the pre-update image, save and mod backup, then test compatibility in a controlled maintenance window. Keep the image tag and mod files that were known to work together; changing both at once makes the cause harder to isolate.
The server stops after reboot
Check that the container still exists, that its restart policy is unless-stopped, and that Docker starts with the VPS. Review logs for a failed mount, invalid JSON or a missing save. A restart policy cannot repair a configuration error that causes the process to exit repeatedly.
Operational checklist
- Persistent host mount:
/opt/factorio:/factorio. - Directory ownership suitable for UID 845.
- UDP 34197 open in both firewall layers.
- TCP 27015 closed unless restricted remote RCON is required.
- Server settings, access lists, RCON credentials, mods and saves stored under the mounted directory.
- Save and configuration backups verified before upgrades.
- Image tag and previous rollback reference recorded.
- Logs reviewed after every restart or recreation.
- Client connection tested after changes to ports, saves, settings or mods.
This arrangement gives you a reproducible Factorio service without tying the world to a particular container instance: Docker runs the process, the VPS protects and exposes it, and the mounted directory preserves the data that matters.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




