
这是一个为Terraria PC版打造的原版服务器,打包为Docker镜像。
hexlo/terraria-server-docker:latest
docker-compose.yml文件(见下方示例)。也可将docker-compose-example.yml重命名为docker-compose.yml并进行修改。yamlversion: '3' services: terraria-server: image: hexlo/terraria-server-docker:latest container_name: terraria-server restart: unless-stopped stdin_open: true tty: true ports: - 7779:7777 volumes: - ./Worlds:/root/.local/share/Terraria/Worlds/ environment: - world=/root/.local/share/Terraria/Worlds/world1.wld - autocreate=2 - worldname=world1 - difficulty=1 - maxplayers=8 - port=7777 - password=mypassword - motd="欢迎来到hexlo的服务器!:)"
docker-compose up -dTerraria世界文件扩展名为.wld。若已有兼容的世界文件,只需将其放入Worlds目录,并确保world变量设置与文件名匹配。
有两种创建新世界的方式:
docker-compose.yml文件中的变量(推荐)1. 使用docker-compose.yml文件中的变量
需在docker-compose.yml的environment:部分设置以下变量:
yaml... environment: - world=/root/.local/share/Terraria/Worlds/world1.wld - autocreate=2 - worldname=world1 - difficulty=1 ...
2. 手动创建世界
可通过连接容器并手动执行服务器命令创建或选择世界:
docker attach <容器名称>
ctrl+p+ctrl+q断开连接(不停止容器)若要服务器在后续启动时自动运行,需通过world环境变量提供现有世界的路径。
注意:变量区分大小写!
| 环境变量 | 默认值 | 描述 | 示例 |
|---|---|---|---|
world | (空) | 世界文件路径。需要提供此变量使服务器自动启动 | world=/root/.local/share/Terraria/Worlds/My_World.wld |
autocreate | 2 | 当指定路径无世界文件时自动创建世界。世界大小:1(小)、2(中)、3(大) | autocreate=2 |
seed | (空) | 使用autocreate时指定世界种子 | seed=someseed123 |
worldname | (空) | 使用autocreate时设置世界名称 | worldname=world1 |
difficulty | 0 | 使用autocreate时设置世界难度。选项:0(普通)、1(专家)、2(大师)、3(旅途) | difficulty=1 |
maxplayers | 16 | 最大玩家数量 | maxplayers=8 |
port | 7777 | 服务器内部端口,不建议修改 | port=8123 |
password | (空) | 服务器密码 | password=serverpassword |
motd | (空) | 服务器每日消息文本 | motd="欢迎来到我的私人服务器!:)" |
worldpath | /root/.local/share/Terraria/Worlds | 世界文件存储目录 | worldpath=/some/other/dir |
banlist | banlist.txt | 封禁列表位置,默认在工作目录的"banlist.txt" | banlist=/configs/banlist.txt(需将本地banlist.txt挂载到容器的/configs/banlist.txt路径) |
secure | 1 | 是否防止作弊(1:禁止作弊;0:允许作弊) | secure=0 |
language | en/US | 设置服务器语言(语言代码)。可用代码:en/US=英语、de/DE=德语、it/IT=意大利语、fr/FR=法语、es/ES=西班牙语、ru/RU=俄语、zh/Hans=中文、pt/BR=葡萄牙语、pl/PL=波兰语 | language=fr/FR |
upnp | 1 | 启用/禁用通用即插即用(UPnP) | upnp=0 |
npcstream | 1 | 减少敌人卡顿但增加带宽使用。数值越低卡顿越少但数据传输越多,0为关闭 | npcstream=60 |
priority | (空) | 设置进程优先级 | priority=1 |
若world变量留空或未设置,服务器需在容器启动后手动初始化。需连接容器并手动选择/创建世界、设置玩家数量、端口和密码。新创建的世界将保存在worldpath变量指定的目录。
docker attach <容器名称>ctrl+p+ctrl+q断开连接seed=<yourseed>变量。服务器运行时可执行以下命令(先通过docker attach <容器名称>连接容器):
help - 显示命令列表 playing - 显示玩家列表(游戏内可通过/playing命令使用) clear - 清空控制台 exit - 关闭服务器并保存 exit-nosave - 关闭服务器不保存 save - 保存游戏世界 kick <玩家名称> - 将玩家踢出服务器 ban <玩家名称> - 封禁玩家 password - 显示当前密码 password <密码> - 修改密码 version - 显示版本号 time - 显示游戏时间 port - 显示监听端口 maxplayers - 显示最大玩家数 say <消息> - 向所有玩家发送消息(玩家将看到黄色<server>前缀的消息) motd - 显示服务器每日消息 motd <消息> - 修改服务器每日消息 dawn - 将时间设为黎明(4:30) noon - 将时间设为正午(12:00) dusk - 将时间设为黄昏(19:30) midnight - 将时间设为午夜(0:00) settle - 平静所有水体
使用ban <玩家名称>命令封禁玩家,被封禁玩家登录时将显示提示信息。解封需编辑"banlist.txt"文件(位于Terraria目录),删除对应玩家名称和IP地址。
注意:命令前无需加斜杠
/,部分命令界面可能需要。<|FCResponseEnd|>===SHORT_DESC=== 一个在Docker容器中运行的原版Terraria服务器
===FULL_DESC===# Terraria原版服务器
这是一个为Terraria PC版打造的原版服务器,打包为Docker镜像。
hexlo/terraria-server-docker:latest
docker-compose.yml文件(见下方示例)。也可将docker-compose-example.yml重命名为docker-compose.yml并进行修改。yamlversion: '3' services: terraria-server: image: hexlo/terraria-server-docker:latest container_name: terraria-server restart: unless-stopped stdin_open: true tty: true ports: - 7779:7777 volumes: - ./Worlds:/root/.local/share/Terraria/Worlds/ environment: - world=/root/.local/share/Terraria/Worlds/world1.wld - autocreate=2 - worldname=world1 - difficulty=1 - maxplayers=8 - port=7777 - password=mypassword - motd="欢迎来到hexlo的服务器!:)"
docker-compose up -dTerraria世界文件扩展名为.wld。若已有兼容的世界文件,只需将其放入Worlds目录,并确保world变量设置与文件名匹配。
有两种创建新世界的方式:
docker-compose.yml文件中的变量(推荐)1. 使用docker-compose.yml文件中的变量
需在docker-compose.yml的environment:部分设置以下变量:
yaml... environment: - world=/root/.local/share/Terraria/Worlds/world1.wld - autocreate=2 - worldname=world1 - difficulty=1 ...
2. 手动创建世界
可通过连接容器并手动执行服务器命令创建或选择世界:
docker attach <容器名称>
ctrl+p+ctrl+q断开连接(不停止容器)若要服务器在后续启动时自动运行,需通过world环境变量提供现有世界的路径。
注意:变量区分大小写!
| 环境变量 | 默认值 | 描述 | 示例 |
|---|---|---|---|
world | (空) | 世界文件路径。需要提供此变量使服务器自动启动 | world=/root/.local/share/Terraria/Worlds/My_World.wld |
autocreate | 2 | 当指定路径无世界文件时自动创建世界。世界大小:1(小)、2(中)、3(大) | autocreate=2 |
seed | (空) | 使用autocreate时指定世界种子 | seed=someseed123 |
worldname | (空) | 使用autocreate时设置世界名称 | worldname=world1 |
difficulty | 0 | 使用autocreate时设置世界难度。选项:0(普通)、1(专家)、2(大师)、3(旅途) | difficulty=1 |
maxplayers | 16 | 最大玩家数量 | maxplayers=8 |
port | 7777 | 服务器内部端口,不建议修改 | port=8123 |
password | (空) | 服务器密码 | password=serverpassword |
motd | (空) | 服务器每日消息文本 | motd="欢迎来到我的私人服务器!:)" |
worldpath | /root/.local/share/Terraria/Worlds | 世界文件存储目录 | worldpath=/some/other/dir |
banlist | banlist.txt | 封禁列表位置,默认在工作目录的"banlist.txt" | banlist=/configs/banlist.txt(需将本地banlist.txt挂载到容器的/configs/banlist.txt路径) |
secure | 1 | 是否防止作弊(1:禁止作弊;0:允许作弊) | secure=0 |
language | en/US | 设置服务器语言(语言代码)。可用代码:en/US=英语、de/DE=德语、it/IT=意大利语、fr/FR=法语、es/ES=西班牙语、ru/RU=俄语、zh/Hans=中文、pt/BR=葡萄牙语、pl/PL=波兰语 | language=fr/FR |
upnp | 1 | 启用/禁用通用即插即用(UPnP) | upnp=0 |
npcstream | 1 | 减少敌人卡顿但增加带宽使用。数值越低卡顿越少但数据传输越多,0为关闭 | npcstream=60 |
priority | (空) | 设置进程优先级 | priority=1 |
若world变量留空或未设置,服务器需在容器启动后手动初始化。需连接容器并手动选择/创建世界、设置玩家数量、端口和密码。新创建的世界将保存在worldpath变量指定的目录。
docker attach <容器名称>ctrl+p+ctrl+q断开连接seed=<yourseed>变量。服务器运行时可执行以下命令(先通过docker attach <容器名称>连接容器):
help - 显示命令列表 playing - 显示玩家列表(游戏内可通过/playing命令使用) clear - 清空控制台 exit - 关闭服务器并保存 exit-nosave - 关闭服务器不保存 save - 保存游戏世界 kick <玩家名称> - 将玩家踢出服务器 ban <玩家名称> - 封禁玩家 password - 显示当前密码 password <密码> - 修改密码 version - 显示版本号 time - 显示游戏时间 port - 显示监听端口 maxplayers - 显示最大玩家数 say <消息> - 向所有玩家发送消息(玩家将看到黄色<server>前缀的消息) motd - 显示服务器每日消息 motd <消息> - 修改服务器每日消息 dawn - 将时间设为黎明(4:30) noon - 将时间设为正午(12:00) dusk - 将时间设为黄昏(19:30) midnight - 将时间设为午夜(0:00) settle - 平静所有水体
使用ban <玩家名称>命令封禁玩家,被封禁玩家登录时将显示提示信息。解封需编辑"banlist.txt"文件(位于Terraria目录),删除对应玩家名称和IP地址。
注意:命令前无需加斜杠
/,部分命令界面可能需要。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 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 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务