Open source game server with authentication, users, lobbies, server scripting and an admin portal.
Game + Backend = Gamend
Discord | Elixir Docs | API Docs | Guides | Deployment Tutorial | Scaling Article
- Configure
.envfile (copy.env.exampleto.env). - Run the following:
docker compose upYou should now see on localhost:4000:
For multi-node deployment, you need Postgres, Redis, a scalable app service (Elixir nodes), and an nginx proxy that load-balances requests to the app replicas.
-
Configure
.envfile (copy.env.exampleto.env). -
Start services with 2 app replicas:
docker compose -f docker-compose.multi.yml up --scale app=2You can configure the:
starter_config.json: This has settings in webpage (eg. titles), along the reference images and css it has.starter_hook.ex: This has custom logic you can write to extend default behaviours..env: This contains secrets (eg. oauth/email/etc.)apps/game_server_web/priv/static/assets/css/theme/theme.css: The theme.apps/game_server_web/priv/static/images: The images used in website.
Run:
cd modules/plugins/starter_hook
mix deps.get
mix deps.compileNote: This can also be done from the admin console.
- Fork this repo.
- Go to fly.io (or another docker provider).
- Connect the app with the repo you forked.
- Launch the app and set your secrets.

