Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fooock/valheim-server
Valheim dedicated gameserver installer
https://github.com/fooock/valheim-server
steam valheim valheim-linux valheim-server
Last synced: 8 days ago
JSON representation
Valheim dedicated gameserver installer
- Host: GitHub
- URL: https://github.com/fooock/valheim-server
- Owner: fooock
- License: mit
- Created: 2021-03-10T20:19:00.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2021-11-05T20:00:38.000Z (about 3 years ago)
- Last Synced: 2024-10-31T14:45:34.017Z (about 2 months ago)
- Topics: steam, valheim, valheim-linux, valheim-server
- Language: Makefile
- Homepage:
- Size: 34.2 KB
- Stars: 4
- Watchers: 3
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# `Valheim` server installer
![](https://img.shields.io/badge/Steam-Valheim-purple?style=for-the-badge&logo=steam)
> :construction: Project in early development
This project contains all required components to deploy a ready to use `Valheim` game server. I made my best effort to had a secure configuration, but I can make mistakes. Review the configuration by yourself.
If you use this software for commercial purposes, please consider making a donation or a horde of bloodthirsty vikings led by Odin will fall on you.
### Requirements
You need to have installed in your system in order to deploy a fully functional game server:
* [`Ansible`](https://www.ansible.com/)
* `make`>If you are on Windows you can use [`wsl`](https://docs.microsoft.com/windows/wsl/install-win10) in order to install the game server.
Note that at this time, the game server only supports [`Ubuntu`](https://ubuntu.com/) as base operating system. Choose a Ubuntu compatible cloud provider.
## Installation
>See [using packer](#using-packer) if you want to create server snapshots in your favourite cloud provider.
First, clone this repository. When done, execute the following command using your own values for the `TARGET_USER` and `TARGET_IP` variables that correspond to **your** server info:
```bash
make TARGET_IP=1.2.3.4 TARGET_USER=root ansible-install
```>You need to provide a `TARGET_IP`. Without this variable the command will not work.
Now you need to wait the command to finish. Be patient and take a coffee :coffee:.
## Configuration
Now that you have your game server installed, you need to change some settings like the gameserver password, world name etc. All this can be configured by editing the `/home/steam/valheim/values.env` file, assuming the default configuration. Default values are:
| Variable | Default value | Description |
|--------------- |--------------------- |------------------------------------------ |
| `GS_NAME` | `My Valheim gameserver` | The name of your game server |
| `GS_PORT` | `2456` | Game server port |
| `GS_WORLD` | `Dedicated` | The world name without spaces |
| `GS_PASSWORD` | `secret` | Game server password. Min. length is 5 |
| `GS_PUBLIC` | `1` | For public servers is `1`, otherwise `0` |When done, the only thing that you need to do for the new values to take effect is restart the systemd service of our game server using:
```bash
systemctl restart valheim
```## Using `Packer`
If you want to use `Packer` to create game server snapshots continue reading. Note that the list of currently supported cloud providers is not complete. If you want to add a new cloud provider, create a [feature request](https://github.com/fooock/valheim-server/issues).
#### [`Hetzner`](https://www.hetzner.com/cloud)
>ID: `hcloud`
To use Hetzner, first you need to generate a new API token with *Read and Write* permissions. Save this token in a local environment variable called `HCLOUD_TOKEN` and then execute this command:
```bash
make CLOUD=hcloud packer-run
```Now, wait until finish.
#### [`Vagrant`](https://www.vagrantup.com/)
>ID: `vagrant`
You will need to have Vagrant and VirtualBox to use this installation method. Just execute this command and wait until finish:
```bash
make CLOUD=vagrant packer-run
```The resulting box will be created in `output-vagrant/package.box`
## License
Check [`LICENSE`](LICENSE) for more information.