
Play the world's number 1 online action game. Engage in an incredibly realistic brand of terrorist warfare in this wildly popular team-based game. Ally with teammates to complete strategic missions. Take out enemy sites. Rescue hostages. Your role affects your team's success. Your team's success affects your role.
Here's what you need to run a Counter-Strike 1.6 dedicated server.
Small server, 2-12 players
Medium server, 12-24 players
Large server, 24-32 players
Start hosting from your own computer
Run a Counter-Strike 1.6 server on your desktop, laptop, VPS, or dedicated machine — GameCP automates Docker setup, resource allocation, and Counter-Strike 1.6 configuration instantly. Automatic port forwarding means your friends can connect without touching your router. Start local, scale to a VPS when you're ready.
Skip the manual SteamCMD installation, port forwarding, and systemd configuration. Install on your own computer and start hosting instantly.
The full manual process to host a Counter-Strike 1.6 dedicated server on a VPS. Or install GameCP on your own computer and skip all of this.
Set your server settings, then install Docker, SteamCMD, and pull the Counter-Strike 1.6 container image.
# Update system and install Docker sudo apt update && sudo apt install -y docker.io sudo systemctl enable --now docker # Create game server directory sudo mkdir -p /opt/gameserver # Install SteamCMD sudo mkdir -p /opt/steamcmd curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | sudo tar zxvf - -C /opt/steamcmd # Server configuration export MAX_PLAYERS="16" export VAC_SECURE="secure" export START_MAP="de_dust2" export PINGBOOST="2" export AUTO_UPDATE="1" # Pull the container image docker pull ghcr.io/ptero-eggs/games:source
Download the Counter-Strike 1.6 dedicated server using Steam App ID 90.
# Download Counter-Strike 1.6 server files (App ID: 90) /opt/steamcmd/steamcmd.sh \ +force_install_dir /opt/gameserver \ +login anonymous \ +app_update 90 validate \ +quit
Counter-Strike 1.6 requires 1 port to be open for game traffic and queries.
sudo ufw allow 27015/both
Start the Counter-Strike 1.6 server using the configuration from Step 1.
Create the startup script
# Create the startup script cat > /opt/gameserver/start.sh << 'EOF' # Fix Steam 32-bit client libraries for HLDS (GoldSrc) mkdir -p /home/container/.steam/sdk32 # Try multiple known paths for the 32-bit steamclient.so for src in /home/container/linux32/steamclient.so /home/container/steamcmd/linux32/steamclient.so; do if [ -f "" ] && file "" 2>/dev/null | grep -q '32-bit'; then cp -f "" /home/container/.steam/sdk32/steamclient.so break fi done # Create steam_appid.txt (App ID 10 = Counter-Strike) echo "10" > /home/container/steam_appid.txt # Ensure LD_LIBRARY_PATH includes 32-bit libraries export LD_LIBRARY_PATH=".:./linux32:" # Start server SECURE_FLAG=""; [ -n "secure" ] && SECURE_FLAG="-secure" ./hlds_run -console -game cstrike +ip 0.0.0.0 +port 27015 +sv_lan 0 +maxplayers 16 +map de_dust2 +sys_ticrate 1200 -pingboost 2 -norestart EOF chmod +x /opt/gameserver/start.sh
Run the container
docker run -d \ --name counter-strike-server \ -p 27015:27015/both \ -e MAX_PLAYERS="16" \ -e VAC_SECURE="secure" \ -e START_MAP="de_dust2" \ -e PINGBOOST="2" \ -e AUTO_UPDATE="1" \ -v /opt/gameserver:/opt/gameserver \ -w /opt/gameserver \ ghcr.io/ptero-eggs/games:source \ ./start.sh
Alternative startup profiles:
GameCP lets you switch between these profiles with one click.
GameCP automates every step above: Docker, SteamCMD, port forwarding, startup, and config. Install on your own PC and deploy a Counter-Strike 1.6 server in under 5 minutes.
Deploy with GameCPExplore step-by-step setup guides for other popular games supported by GameCP.
Install GameCP on your own computer and start hosting in minutes. Automatic port forwarding, zero config — your friends connect instantly.
No credit card required · Free tier available · Install local, scale later