2025-03-04 18:59:12 +01:00
2025-01-16 23:01:08 +01:00
2025-01-16 23:01:08 +01:00
2025-01-16 23:01:08 +01:00
2025-01-17 19:53:02 +01:00
2025-01-17 20:06:59 +01:00

Docker GitHub Actions Steam

GitHub Actions Docker Image CI Docker

banner

HLDS Docker dproto(47/48 Steam+noSteam) - Crossfire 24/7

Half-Life Dedicated Server as a Docker image

Probably the fastest and easiest way to set up an old-school Half-Life Deathmatch Dedicated Server (HLDS).
Both Steam and noSteam, old and new half-life clients can connect and play together!
You don't need to know anything about Linux or HLDS to start a server. You just need Docker and this image.

Repository

This project is a fork of: artkirienko/hlds-docker-dproto

Quick Start

Docker Hub Image

The latest image of this repo is available in docker hub josejsalinas/hl-server 🐋

# To quickly run the image
docker run -it --rm -d --name hl-server -p27015:27015 -p27015:27015/udp josejsalinas/hl-server +map crossfire +maxplayers 12

Locally

Build the image hl-server:

docker build -t hl-server .

Run your image

docker run -it --rm -d --name hl-server -p27015:27015 -p27015:27015/udp 

You can add extra parameters when starting the image

docker run -it --rm  --name hl-server -p27015:27015 -p27015:27015/udp hl-server +map crossfire +maxplayers 16 +password 1 +vs_password "password"

Note: Any server config command can be passed by using + after the docker command options.

Customization

Adjust things as you like in default.cfg file to set them to your liking. Like hostname to set your server name, or sv_password to set a password.

What is included

  • HLDS Build 7882. This is the last known version that is compatible with last version of dproto that's 0.9.582

    Protocol version 47/48
    Exe version 1.1.2.2/Stdio (valve)
    Exe build: 17:23:32 May 24 2018 (7882)
    
  • Metamod-p version 1.21p38

  • AMX Mod X version 1.8.2

  • dproto version 0.9.582. This is the last version of dproto, the project is abandoned.

  • Patched list of master servers (official and unofficial master servers included), so your game server appear in game server browser of all the clients

  • Minimal config present, such as mp_timelimit and mapcycle

Default mapcycle - crossfire 24/7

  • crossfire

Advanced

In order to use a custom server config file, add your settings to valve/config/server.cfg of this project and mount the directory as volume to /opt/steam/hlds/valve/config by running:

# Using docker hub image
docker run -it --rm -d -p27015:27015 -p27015:27015/udp -v $(pwd)/valve/config:/opt/steam/hlds/valve/config josejsalinas/hl-server
Description
Half-Life Dedicated Server as a Docker image
Readme 1.3 MiB
Languages
Dockerfile 42%
Shell 33.2%
Pawn 24.8%