veloren в контейнере

Рассмотрим пример поднятия сервера veloren через контейнер, предполагается, что первоначальные настройки с установкой docker уже выполнены. Общую документацию можно увидеть тут. Для начала скачаем композ-файл:

wget https://gitlab.com/veloren/veloren/-/raw/master/server-cli/docker-compose.yml

Далее отредактируем этот композ-файл в соотвествии с нашими потребностями, а именно - изменим место монтирование папки с настройками, в изначальном файле монитрование папки /opt/userdata, где находятся настройки сервера происходит в папку пользователя userdata, исправим это на /opt/veloren, в этом случае наш файл будет выглядеть следующим образом:

version: "3.5"

services:
  game-server:
    image: registry.gitlab.com/veloren/veloren/server-cli:weekly
    stdin_open: true
    tty: true
    container_name: veloren-game-server-master
    ports:
      - "14004:14004"
      - "14005:14005"
    restart: on-failure:0
    volumes:
        - "/opt/veloren:/opt/userdata"
    environment:
        - RUST_LOG=debug,common::net=info
  watchtower:
    image: containrrr/watchtower
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    command: --interval 30 --stop-timeout 130s --cleanup veloren-game-server-master
    restart: on-failure:0

После этого запустим наш контейнер:

docker-compose -f docker-compose.yml build
docker-compose up -d

По результату мы получим в папке /opt/veloren/server/server_config файл settings.ron его нам надо отредактировать в соотвествии с нашими потребностями, например для отключения авторизации:

auth_server_address: Some("https://auth.veloren.net")

Тут конкретный сервер надо заменить на None Другие параметры редактируются анлогично, после редактирования перезапускаем наш контейнер и подключаемся с клиента. Скачать клиент можно с офф сайта либо с помощью flatpack:

flatpak install flathub net.veloren.airshipper