From 7304c58a1b2cc9feac8f5f8e4f48d1d7c6b70eb3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Garapich?= Date: Tue, 19 Dec 2023 23:32:48 +0100 Subject: [PATCH] fix(tf2-base): fix DOWNLOAD_URL (#128) --- README.md | 79 +++++++++++++++++------------------- packages/tf2-base/Dockerfile | 2 +- 2 files changed, 39 insertions(+), 42 deletions(-) diff --git a/README.md b/README.md index a3fc6bd..4a50e32 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,6 @@ **[Team Fortress 2 Dedicated Server](https://wiki.teamfortress.com/wiki/Linux_dedicated_server) Docker images for multiple purposes** - ``` $ docker run \ -v "maps:/home/tf2/server/tf/maps" \ @@ -33,22 +32,25 @@ $ docker run \ Each TF2 image has its own `server.cfg.template` file that is used to generate `server.cfg`. The docker container uses `envsubst` to replace environment variables in the template file. For example, this line in `server.cfg.template`: + ``` rcon_password "${RCON_PASSWORD}" ``` when launched with these params: + ``` $ docker run --network=host -e RCON_PASSWORD=123456 -itd ghcr.io/melkortf/tf2-base ``` + will generate the following `server.cfg`: + ``` rcon_password "123456" ``` There are many more configuration options, you will find them all below. - ## tf2-base ``` @@ -57,21 +59,20 @@ $ docker pull ghcr.io/melkortf/tf2-base The base image for all other images; pure TF2 server, without any add-ons and plugins. -Environment variable | Default value | Used in | Description --------------------- | ------------- | ------- | ----------- -IP | 0.0.0.0 | `-ip ${IP}` | Specifies the address to use for the bind(2) syscall. -PORT | 27015 | `-port ${PORT}` | The port which the server will run on. -CLIENT_PORT | 27016 | `+clientport ${CLIENT_PORT}` | The client port. -STEAM_PORT | 27018 | `-steamport ${STEAM_PORT}` | Master server updater port. -STV_PORT | 27020 | `+tv_port ${STV_PORT}` | SourceTV port. -RCON_PASSWORD | 123456 | `rcon_password "${RCON_PASSWORD}"` | The RCON password (change this in your `docker run` invocation). -SERVER_HOSTNAME | A Team Fortress 2 server | `hostname "${SERVER_HOSTNAME}"` | The game server hostname. -SERVER_PASSWORD | | `sv_password "${SERVER_PASSWORD}"` | The server password. -STV_NAME | Source TV | `tv_name "${STV_NAME}"` | SourceTV host name. -STV_TITLE | A Team Fortress 2 server Source TV | `tv_title "${STV_TITLE}"` | Title for the SourceTV spectator UI. -STV_PASSWORD | | `tv_password "${STV_PASSWORD}"` | SourceTV password. -DOWNLOAD_URL | https://dl.serveme.tf/ | `sv_downloadurl "${DOWNLOAD_URL}"` | Download URL for the [FastDL](https://developer.valvesoftware.com/wiki/Sv_downloadurl). - +| Environment variable | Default value | Used in | Description | +| -------------------- | ---------------------------------- | ---------------------------------- | --------------------------------------------------------------------------------------- | +| IP | 0.0.0.0 | `-ip ${IP}` | Specifies the address to use for the bind(2) syscall. | +| PORT | 27015 | `-port ${PORT}` | The port which the server will run on. | +| CLIENT_PORT | 27016 | `+clientport ${CLIENT_PORT}` | The client port. | +| STEAM_PORT | 27018 | `-steamport ${STEAM_PORT}` | Master server updater port. | +| STV_PORT | 27020 | `+tv_port ${STV_PORT}` | SourceTV port. | +| RCON_PASSWORD | 123456 | `rcon_password "${RCON_PASSWORD}"` | The RCON password (change this in your `docker run` invocation). | +| SERVER_HOSTNAME | A Team Fortress 2 server | `hostname "${SERVER_HOSTNAME}"` | The game server hostname. | +| SERVER_PASSWORD | | `sv_password "${SERVER_PASSWORD}"` | The server password. | +| STV_NAME | Source TV | `tv_name "${STV_NAME}"` | SourceTV host name. | +| STV_TITLE | A Team Fortress 2 server Source TV | `tv_title "${STV_TITLE}"` | Title for the SourceTV spectator UI. | +| STV_PASSWORD | | `tv_password "${STV_PASSWORD}"` | SourceTV password. | +| DOWNLOAD_URL | https://fastdl.serveme.tf/ | `sv_downloadurl "${DOWNLOAD_URL}"` | Download URL for the [FastDL](https://developer.valvesoftware.com/wiki/Sv_downloadurl). | ## tf2-sourcemod @@ -81,7 +82,6 @@ $ docker pull ghcr.io/melkortf/tf2-sourcemod TF2 server with [Metamod:Source](https://www.sourcemm.net/) and [SourceMod](https://www.sourcemod.net/) installed. - ## tf2-competitive ``` @@ -90,27 +90,26 @@ $ docker pull ghcr.io/melkortf/tf2-competitive TF2 server configured to be used in competitive matches. The following plugins, add-ons and configs are installed: -* [TF2 competitive fixes](https://github.com/ldesgoui/tf2-comp-fixes) -* [Updated pause plugin](https://github.com/l-Aad-l/updated-pause-plugin) -* [SrcTV+](https://github.com/dalegaard/srctvplus) -* [Improved Match Timer plugin](https://github.com/dewbsku/Improved-Match-Timer) -* [Supplemental Stats 2](https://github.com/F2/F2s-sourcemod-plugins#supplemental-stats-2-) -* [Medic Stats](https://github.com/F2/F2s-sourcemod-plugins#medic-stats-) -* [RestoreScore](https://github.com/F2/F2s-sourcemod-plugins#restorescore-) -* [LogsTF](https://github.com/F2/F2s-sourcemod-plugins#logstf-) -* [RecordSTV](https://github.com/F2/F2s-sourcemod-plugins#recordstv-) -* [WaitForSTV](https://github.com/F2/F2s-sourcemod-plugins#waitforstv-) -* [FixStvSlot](https://github.com/F2/F2s-sourcemod-plugins#fixstvslot-) -* [AFK](https://github.com/F2/F2s-sourcemod-plugins#afk-) -* [tf2rue](https://github.com/sapphonie/tf2rue) -* [ETF2L.org configs](https://github.com/ETF2L/gameserver-configs) -* [RGL.gg configs](https://github.com/RGLgg/server-resources-updater/tree/master/cfg) - -Environment variable | Default value | Used in | Description --------------------- | ------------- | ------- | ----------- -DEMOS_TF_APIKEY | | `sm_demostf_apikey ${DEMOS_TF_APIKEY}` | The API key used to upload the demo to [demos.tf](https://demos.tf/). -LOGS_TF_APIKEY | | `logstf_apikey ${LOGS_TF_APIKEY}` | The API key used to upload logs to logs.tf. - +- [TF2 competitive fixes](https://github.com/ldesgoui/tf2-comp-fixes) +- [Updated pause plugin](https://github.com/l-Aad-l/updated-pause-plugin) +- [SrcTV+](https://github.com/dalegaard/srctvplus) +- [Improved Match Timer plugin](https://github.com/dewbsku/Improved-Match-Timer) +- [Supplemental Stats 2](https://github.com/F2/F2s-sourcemod-plugins#supplemental-stats-2-) +- [Medic Stats](https://github.com/F2/F2s-sourcemod-plugins#medic-stats-) +- [RestoreScore](https://github.com/F2/F2s-sourcemod-plugins#restorescore-) +- [LogsTF](https://github.com/F2/F2s-sourcemod-plugins#logstf-) +- [RecordSTV](https://github.com/F2/F2s-sourcemod-plugins#recordstv-) +- [WaitForSTV](https://github.com/F2/F2s-sourcemod-plugins#waitforstv-) +- [FixStvSlot](https://github.com/F2/F2s-sourcemod-plugins#fixstvslot-) +- [AFK](https://github.com/F2/F2s-sourcemod-plugins#afk-) +- [tf2rue](https://github.com/sapphonie/tf2rue) +- [ETF2L.org configs](https://github.com/ETF2L/gameserver-configs) +- [RGL.gg configs](https://github.com/RGLgg/server-resources-updater/tree/master/cfg) + +| Environment variable | Default value | Used in | Description | +| -------------------- | ------------- | -------------------------------------- | --------------------------------------------------------------------- | +| DEMOS_TF_APIKEY | | `sm_demostf_apikey ${DEMOS_TF_APIKEY}` | The API key used to upload the demo to [demos.tf](https://demos.tf/). | +| LOGS_TF_APIKEY | | `logstf_apikey ${LOGS_TF_APIKEY}` | The API key used to upload logs to logs.tf. | ## tf2-dm @@ -120,7 +119,6 @@ $ docker pull ghcr.io/melkortf/tf2-dm TF2 dedicated server for DeathMatch gameplay. - ## tf2-mge ``` @@ -129,7 +127,6 @@ $ docker pull ghcr.io/melkortf/tf2-mge TF2 dedicated server for MGE 1v1 training mod. - ## Maps In order to make the image as small as possible, the only map shipped with the image is _cp_badlands_. This has also the advantage of letting you maintain only one directory diff --git a/packages/tf2-base/Dockerfile b/packages/tf2-base/Dockerfile index 7184f48..af95a45 100644 --- a/packages/tf2-base/Dockerfile +++ b/packages/tf2-base/Dockerfile @@ -80,7 +80,7 @@ ENV SERVER_PASSWORD= ENV STV_NAME="Source TV" ENV STV_TITLE="A Team Fortress 2 server Source TV" ENV STV_PASSWORD= -ENV DOWNLOAD_URL="https://dl.serveme.tf/" +ENV DOWNLOAD_URL="https://fastdl.serveme.tf/" WORKDIR $SERVER_DIR COPY entrypoint.sh .