:
console$ docker run -d --net=host --name=tf2-dedicated -e SRCDS_TOKEN={YOURTOKEN} cm2network/tf2
使用绑定挂载实现容器重建时的数据持久化:
console$ mkdir -p $(pwd)/tf2-data $ chmod 777 $(pwd)/tf2-data # 确保目录可被非特权容器用户写入 $ docker run -d --net=host -v $(pwd)/tf2-data:/home/steam/tf-dedicated/ --name=tf2-dedicated -e SRCDS_TOKEN={YOURTOKEN} cm2network/tf2
运行多个实例(递增 SRCDS_PORT 和 SRCDS_TV_PORT):
console$ docker run -d --net=host --name=tf2-dedicated2 -e SRCDS_PORT=27016 -e SRCDS_TV_PORT=27021 -e SRCDS_TOKEN={YOURTOKEN} cm2network/tf2
SRCDS_TOKEN 是服务器被列出和访问所必需的。使用 AppID 440 在此生成: []
SRCDS_WORKSHOP_AUTHKEY 是使用创意工坊功能所必需的: []
还建议使用 "--cpuset-cpus=" 将游戏服务器限制在特定的核心和线程上。
容器会在启动时自动更新游戏,因此如果有游戏更新,只需重启容器即可。
除了使用 docker run,也可以使用 docker compose,无需手动运行长命令或脚本,尤其适用于多服务器场景。以下是示例 docker-compose.yml:
yamlservices: tf2: # 分配标准输入(docker run -i) stdin_open: true # 分配终端(docker run -t) tty: true # 分配的最大 CPU 数,浮点数,例如可设为 3.5 cpus: 4 # 分配的特定 CPU,0-3 表示前 4 个 CPU,也可使用 "0,1,2,3" cpuset: 0-3 # 使用主机网络,推荐 network_mode: host # 将 /srv/tf2-dir 绑定到容器内的 /home/steam/tf-dedicated volumes: - /srv/tf2-dir:/home/steam/tf-dedicated container_name: tf2-dedicated environment: SRCDS_TOKEN: "0123456789DEADB33F" SRCDS_PW: "examplepassword" # 其他环境变量... image: cm2network/tf2:latest
这将创建一个名为 tf2-dedicated 的容器,带有用于持久化数据的绑定挂载。使用 compose 时尤其推荐此方式,因为 docker compose down 会删除 已定义的容器。
对于环境变量,也可以使用 .env 文件。
可使用 -e(--env)覆盖以下环境变量:
dockerfileSRCDS_TOKEN="changeme"(服务器被列出和访问所必需,使用 AppID 440 在此获取令牌:https://steamcommunity.com/dev/managegameservers) SRCDS_RCONPW="changeme"(可被 tf/cfg/server.cfg 覆盖) SRCDS_PW="changeme"(可被 tf/cfg/server.cfg 覆盖) SRCDS_PORT=27015 SRCDS_TV_PORT=27020 SRCDS_IP="0"(要绑定的本地 IP) SRCDS_FPSMAX=300 SRCDS_TICKRATE=66 SRCDS_MAXPLAYERS=14 SRCDS_REGION=3 SRCDS_STARTMAP="ctf_2fort" SRCDS_HOSTNAME="New TF Server"(首次启动时设置) SRCDS_WORKSHOP_AUTHKEY=""(加载创意工坊地图所需) SRCDS_CFG="server.cfg" SRCDS_MAPCYCLE="mapcycle_default.txt"(可被 tf/cfg/server.cfg 覆盖) SRCDS_SECURED=1(设为 0 以非安全模式启动服务器) SRCDS_SDR_FAKEIP=0(设为 1 允许 Steam Datagram Relay,隐藏服务器 IP)
此镜像包含来自 UGC League 和 RGL.gg 的竞赛配置文件静态副本。
可使用以下命令编辑配置:
console$ docker exec -it tf2-dedicated nano /home/steam/tf-dedicated/tf/cfg/server.cfg
或者,如果要显式指定服务器配置文件,可使用 SRCDS_CFG 环境变量。
如需了解更多关于配置 TF2 服务器的信息,请查看此 文档。
tf2 镜像有三种类型,每种设计用于特定场景,并提供 64 位版本(如需要)。
tf2:latest这是默认镜像。如果不确定需求,建议使用此版本。它是最小化的 TF2 专用服务器,不包含第三方插件。
tf2:metamod这是专用镜像。包含插件环境 Metamod:Source,位于 addons 目录中。可在此找到其他插件 here。
tf2:sourcemod这是另一种专用镜像。包含 Metamod:Source 和流行的服务器插件 SourceMod,位于 addons 目录中。SourceMod 支持多种附加插件,可在此找到 here。
tf2:[variant]-x64所有三种变体的 64 位版本,即 latest-x64、metamod-x64 和 sourcemod-x64。将运行 64 位服务器 srcds_linux64,并带有 64 位版本的 Metamod 或 SourceMod。
如何选择?
如果需要 SourceMod 且不确定插件是否支持 64 位服务器,建议使用 32 位变体 tf2:sourcemod。如果要运行无插件服务器,tf2:latest-x64 是首选。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务