参考
私服搭建
docker镜像
Dockerfile
# base as HoshinoRei/l4d2server-docker
FROM debian:12-slim
LABEL org.opencontainers.image.source=https://github.com/HoshinoRei/l4d2server-docker
LABEL L4D2_VERSION=2243
ENV LANG=C.UTF-8
ENV LC_ALL=C.UTF-8
ENV LANGUAGE=C.UTF-8
RUN sed -i 's@deb.debian.org@repo.huaweicloud.com@g' /etc/apt/sources.list.d/debian.sources && \
apt-get update && \
apt-get install -y wget lib32gcc-s1 nano && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* && \
adduser --home /home/steam --disabled-password --shell /bin/bash --gecos "user for running steam" --quiet steam
USER steam
WORKDIR /home/steam
RUN wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz && \
tar -xzf steamcmd_linux.tar.gz && \
rm -rf steamcmd_linux.tar.gz && \
./steamcmd.sh +force_install_dir /home/steam/l4d2server +login anonymous +@sSteamCmdForcePlatformType windows +app_update 222860 validate +quit && \
./steamcmd.sh +force_install_dir /home/steam/l4d2server +login anonymous +@sSteamCmdForcePlatformType linux +app_update 222860 validate +quit
EXPOSE 27015 27015/udp
构建镜像ld42_server
docker build -t l4d2_server .
配置文件
服务器信息
宿主机下新建server.cfg
服务端路径left4dead2/cfg/server.cfg
// 服务器名称
hostname "dmjcb"
// Steam group
sv_steamgroup "123456"
// whether to make the server Steam group private
sv_steamgroup_exclusive "1"
// whether or not to allow people with different mods to enter the server
sv_consistency "0"
// hidden server
sv_tags "hidden"
// region, 255 means all
sv_region "255"
欢迎信息(可选)
宿主机新建motd.txt
服务端路径left4dead2/cfg/motd.txt
Welcome to My L4D2 Server!
Enjoy your stay!
建立服务端
创建容器
使用l4d2_server镜像与server.cfg, 创建容器l4d2
docker run -itd --net="host" --name=l4d2 -v ./server.cfg:/home/steam/l4d2server/left4dead2/cfg/server.cfg l4d2_server
建图
获取目标地图代码, 执行命令建立地图
docker exec -it l4d2 sh /home/steam/l4d2server/srcds_run -game left4dead2 -secure -insecure +map 地图代码 -maxplayers 8 -condebug +exec /home/steam/l4d2server/left4dead2/cfg/server.cfg -nomaster
建立地图后出现下方显示表示启动成功
三方图
若要使用三方图, 须将地图文件拷贝到容器内/home/steam/l4d2server/left4dead2/addons
路径下
- 示例, 使用广州增城地图
拷贝vpk文件到容器指定路径
docker cp ./2396847377.vpk l4d2:/home/steam/l4d2server/left4dead2/addons
修改地图代码为增城第一关, 启动
docker exec -it l4d2 sh /home/steam/l4d2server/srcds_run -game left4dead2 -secure -insecure +map zc_m1 -maxplayers 8 -condebug +exec /home/steam/l4d2server/left4dead2/cfg/server.cfg -nomaster
连接
创建大厅
选择完成战役
-与好友一起玩游戏
-创建新战役大厅
设置服务器
服务器类型选目前最佳专用
按~启动控制台, 设置强制使用指定服务器, 开始游戏
mm_dedicated_force_servers 服务器IP:端口
- 示例, 设服务器IP为112.126.28.203, 端口默认27015
mm_dedicated_force_servers 112.126.28.203:27015
连接成功后服务端显示用户已经加入
服务端能正常显示游戏内容
控制台指令
基础
队友传送
Warp_all_survivors_here
作弊
Sv_Cheats 1
无敌
god 1
穿墙
noclip
第三人称
thirdpersonshoulder 1
绑定按键
- 示例, 绑定到按键 g
bind g "thirdpersonshoulder 1"
武器
无限弹药不换弹夹
sv_infinite_ammo 1
激光
upgrade_add laser_sight
榴弹
give weapon_grenade_launcher
m60
give rifle_m60
地图
map 地图代码
突变模式
map 地图代码 模式名
猎头者
map 地图代码 mutation2