Factorio server linux docker

Saved searches

Use saved searches to filter your results more quickly

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.

Factorio Server in Docker

License

zopanix/docker_factorio_server

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Sign In Required

Please sign in to use Codespaces.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching Xcode

If nothing happens, download Xcode and try again.

Launching Visual Studio Code

Your codespace will open once ready.

There was a problem preparing your codespace, please try again.

Latest commit

Git stats

Files

Failed to load latest commit information.

README.md

Factorio Server in docker

Please checkout the different tags

This runs factorio with default settings, and your save will be kept :

docker run -d \ -v [PATH]:/opt/factorio/saves \ -p [PORT]:34197/udp \ zopanix/factorio 
  • Where [PATH] is a folder where you’ll put your saves, if there already is a save in it with the string «save», that one will be taken by default, otherwize, a new one will be made.
  • Where [PORT] is the port number you choose, if you’re going to launch it on your local machine, don’t use the port 34197, take another one at random.
docker run -d \ -p [PORT]:34197/udp \ zopanix/factorio 

This will generate a new random map with default settings.

docker run -d \ -v [PATH]:/opt/factorio/saves \ -p [PORT]:34197/udp \ zopanix/factorio 

This will generate a new random map with default settings and save it onto the volume. Replace [PATH] with a path to a folder on the host where the map will be saved. If existing saves exist it will take the latest one.

You can set the autosave interval. By default it is set at 2 minutes bud you can change it by launching the container with the «FACTORIO_AUTOSAVE_INTERVAL» variable to whatever suits you best.

docker run -d \ --env FACTORIO_AUTOSAVE_INTERVAL=[NUMBER] \ -p [PORT]:34197/udp \ zopanix/factorio 

Where [NUMBER] is the number of minutes between autosaves.

Читайте также:  Archer t2u nano linux drivers

You can set the number of autosave slots. By default it is set at 3 slots bud you can change it by launching the container with the «FACTORIO_AUTOSAVE_SLOTS» variable to whatever suits you best.

docker run -d \ --env FACTORIO_AUTOSAVE_SLOTS=[NUMBER] \ -p [PORT]:34197/udp \ zopanix/factorio 

Where [NUMBER] is the number of autosave slots.

As everybody knows about factorio is you can add mods to it. Now you can also do it in this docker image by mounting a volume.

docker run -d \ -v [PATH]:/opt/factorio/mods \ -p [PORT]:34197/udp \ zopanix/factorio 

Where [PATH] is the path to the folder with your mods.

I’ve always disabled in-game commands because I think it is like cheating, however, you can enable them by setting the the «FACTORIO_ALLOW_COMMANDS» variable to «true».

docker run -d \ --env FACTORIO_ALLOW_COMMANDS=true \ -p [PORT]:34197/udp \ zopanix/factorio 

Activating no-auto-pause in the game when no one is on the server

I do not recommend this feature, bud it can make the game more difficult if you’re up for a challenge :-). Just set the «FACTORIO_NO_AUTO_PAUSE» variable to «true».

docker run -d \ --env FACTORIO_NO_AUTO_PAUSE=true \ -p [PORT]:34197/udp \ zopanix/factorio 

I do not know what the real impact is, ut has always worked very well on default, but you can change the latency option in ms.

docker run -d \ --env FACTORIO_LATENCY_MS=[number] \ -p [PORT]:34197/udp \ zopanix/factorio 

I don’t know what it is, possibilities are : heavy, complete or none (don’t do anything. )

docker run -d \ --env FACTORIO_MODE=[MODE] \ -p [PORT]:34197/udp \ zopanix/factorio 

Set Factorio Server Name (defaults to «Factorio Server»)

docker run -d \ --env FACTORIO_SERVER_NAME=[NAME] -p [PORT]:34197/udp \ zopanix/factorio 

Factorio Server Description

Set Factorio Server Description (if not specified, no description will be set)

docker run -d \ --env FACTORIO_SERVER_DESCRIPTION=[DESCRIPTION] -p [PORT]:34197/udp \ zopanix/factorio 

Factorio Server Max Players

Set Factorio Server Max Players count (if not specified, maximum players is set to 255)

docker run -d \ --env FACTORIO_SERVER_MAX_PLAYERS=[NUMBER] -p [PORT]:34197/udp \ zopanix/factorio 

Factorio Server Visibility

//: # (Set Factorio Server Visibility (if set to public, factorio.com User Login and Password or Token are required)) Set Factorio Server Visibility (if set to public, factorio.com User Login and Password are required)

docker run -d \ --env FACTORIO_SERVER_VISIBILITY=[hidden,lan,public] -p [PORT]:34197/udp \ zopanix/factorio 

Factorio Server factorio.com Login

Set factorio.com User Login and Password required for public server visibility

docker run -d \ --env FACTORIO_USER_USERNAME=[USERNAME] --env FACTORIO_USER_PASSWORD=[PASSWORD] -p [PORT]:34197/udp \ zopanix/factorio 

Factorio Server Game Password

Set Factorio Server Game Password (if not specified, no password will be set)

docker run -d \ --env FACTORIO_SERVER_GAME_PASSWORD=[GAME-PASSWORD] -p [PORT]:34197/udp \ zopanix/factorio 

Factorio Server Verify User Identity

Set Verify User Identity to true to require factorio.com account for user to login (defaults to false)

docker run -d \ --env FACTORIO_SERVER_VERIFY_IDENTITY=[false,true] -p [PORT]:34197/udp \ zopanix/factorio 

Factorio RCON Console Port

Читайте также:  Alsa настройка звука linux

This allows you to expose a RCON Console

docker run -d \ -p [PORT]:34197/udp \ -p [PORT_RCON]:27015/tcp \ zopanix/factorio 

Where PORT_RCON is the port you want to use. By default a random password is set bud . see below

Factorio RCON Console Password

This allows you to set a password for RCON (if not specified, it will be random)

docker run -d \ --env FACTORIO_RCON_PASSWORD=[PASSWORD] \ -p [PORT]:34197/udp \ zopanix/factorio 

If your container exits with the following error:

Info HttpSharedState.cpp:83: Status code: 401 Info AuthServerConnector.cpp:40: Error in communication with auth server: code(401) message(< "message": "Username and password don't match", "status": 401 >) Info AuthServerConnector.cpp:68: Auth server authorization error (Username and password don't match) Error Util.cpp:57: Unknown error 

Check supplied Username and Password for mistakes.

This is a beta feature which has nothing to do with factorio. leave it as it is for the moment. I’m working with some collegues on something new which should work very well and please a lot of people.

Источник

Saved searches

Use saved searches to filter your results more quickly

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.

Lightweight, low-config containerized Factorio server with support for interactive and non-interactive commands

sover02/docker-factorio

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Sign In Required

Please sign in to use Codespaces.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching Xcode

If nothing happens, download Xcode and try again.

Launching Visual Studio Code

Your codespace will open once ready.

There was a problem preparing your codespace, please try again.

Latest commit

Git stats

Files

Failed to load latest commit information.

README.md

A small, simple containerized Factorio server that supports interactive and non-interactive server commands. Suitable for local and hosted servers. Simple, low-configuration and highly customizable.

docker build -t docker-factorio .
docker run --name docker-factorio -itp 34197:34197/udp 6davids/docker-factorio docker run --name docker-factorio -itdp 34197:34197/udp 6davids/docker-factorio # runs detached
docker run --name docker-factorio -itp 34197:34197/udp --platform linux/amd64 6davids/docker-factorio # ctrl-c kills server docker run --name docker-factorio -itdp 34197:34197/udp --platform linux/amd64 6davids/docker-factorio # runs detached
david@focus docker-factorio % # Hop into the container david@focus docker-factorio % docker exec -it docker-factorio bash root@docker-factorio:/app root@docker-factorio:/app # Start Interactive Script root@docker-factorio:/app ./interact.sh 250.157 Info ServerMultiplayerManager.cpp:943: updateTick(15117) received stateChanged peerID(1) oldState(ConnectedDownloadingMap) newState(ConnectedLoadingMap) 250.341 Info ServerMultiplayerManager.cpp:943: updateTick(15127) received stateChanged peerID(1) oldState(ConnectedLoadingMap) newState(TryingToCatchUp) 250.342 Info ServerMultiplayerManager.cpp:943: updateTick(15127) received stateChanged peerID(1) oldState(TryingToCatchUp) newState(WaitingForCommandToStartSendingTickClosures) 250.355 Info GameActionHandler.cpp:4996: UpdateTick (15127) processed PlayerJoinGame peerID(1) playerIndex(0) mode(connect) 250.407 Info ServerMultiplayerManager.cpp:943: updateTick(15131) received stateChanged peerID(1) oldState(WaitingForCommandToStartSendingTickClosures) newState(InGame) 2022-04-09 06:08:43 [JOIN] david joined the game sup 2022-04-09 06:08:51 [CHAT] server>: sup 2022-04-09 06:09:46 [CHAT] david: lol /kick david lol

Non-Interactive (for scripts or one-offs):

david@focus docker-factorio % # Hop into the container david@focus docker-factorio % docker exec -it docker-factorio bash root@docker-factorio:/app # Send commands to the server root@docker-factorio:/app ./run-command.sh "sup" 2022-04-09 17:03:11 [CHAT] server>: sup root@docker-factorio:/app ./run-command.sh "/kick david lol" 2022-04-09 17:03:24 [KICK] david was kicked by server>. Reason: lol. 1352.490 Info ServerMultiplayerManager.cpp:1061: Disconnect notification for peer (1)

Or, if you don’t need to see the command output:

david@focus docker-factorio % # Hop into the container david@focus docker-factorio % docker exec -it docker-factorio bash root@docker-factorio:/app # Send commands to the server root@docker-factorio:/app echo "sup" > ./factorio-server-fifo root@docker-factorio:/app echo "/kick david lol" > ./factorio-server-fifo

Starting, Stopping, Restarting the Server

The image comes with a few scripts to help managing server execution.

root@docker-factorio:/app # Hop into the container david@focus docker-factorio % docker exec -it docker-factorio bash root@docker-factorio:/app # Stop the factorio server root@docker-factorio:/app ./stop-server.sh Stopping Factorio Server. Done! root@docker-factorio:/app # The server starts on it's own, but you can start it again after stopping it. root@docker-factorio:/app ./start-server.sh Starting Factorio Server. Done! root@docker-factorio:/app # Cycle the server. Useful after config changes. root@docker-factorio:/app ./restart-server.sh Stopping Factorio Server. Done! Starting Factorio Server. Done!

By default the container creates a new game and then uses it from then on. If you’d like to use your own games, create two mounts when running the container:

Drop your save files in the saves/ directory, and then enter the name of the save file you’d to use into last-game.txt

david@focus docker-factorio % cp my-cool-saved-game.zip ~/factorio-stuffs/saved-games/ david@focus docker-factorio % echo "my-cool-saved-game.zip" > ~/factorio-stuffs/last-game.txt david@focus docker-factorio % # Start the container detached, with ports mounted, and the two binds mentioned above david@focus docker-factorio % docker run --name docker-factorio -it \ > -d > -p 34197:34197/udp \ > --mount type=bind,source=~/factorio-stuffs/saved-games,target=/app/factorio/saves \ > --mount type=bind,source=~/factorio-stuffs/last-game.txt,target=/app/factorio/last-game.txt \ > 6davids/docker-factorio abdac7023091 david@focus docker-factorio % # We're ready to go

Settings can be managed the same way that saved games are. Mount files in the default locations to populate the server configs.

  • Commands to start, stop, and restart the server
  • Load and backup savefiles from s3?
  • Small REST API to control the server
  • RCON support?
  • Create settings examples
  • Kubernetes boilerplate configs
  • Github action to build and push automatically with new factorio updates

About

Lightweight, low-config containerized Factorio server with support for interactive and non-interactive commands

Источник

Оцените статью
Adblock
detector