Game Servers
VortexServers.co.uk โ Community game server hosting
Live game server deployments, provisioning, and monitoring for VortexServers.co.uk.
Project architecture
Live architecture snapshot
Topology
Docker + Linux host overview
Separate Go service exposing live Docker daemon, container, image, and Linux host telemetry.
client
-> portfolio site
-> /api/architecture
-> host Go service
containers
- archview-archview-1
- socket-proxy
- vortexservers_co_uk-web-1
- pelican-node
- pelican-panel
- npm
- bookstack
- authentik-authentik-1
- authentik-postgres-1
- authentik-worker-1
- authentik-redis-1
- portainer
- bookstack_db
- portainer_edge_agent
- pelican-database
- backrest
- wg-easy
- server-maintenance-notification-agent-notification-agent-1
- server-maintenance-notification-agent-docker-socket-proxy-1
- project-zomboid-player-count-discord-bot-1
- discord-gsm
- dishorde
- docker-daemon
images
- ghcr.io/tekkifox/archview
- ghcr.io/tekkifox/vortexservers_co_uk
- ghcr.io/parkervcp/steamcmd
- lscr.io/linuxserver/socket-proxy
- ghcr.io/parkervcp/yolks
- ghcr.io/parkervcp/steamcmd
- ghcr.io/parkervcp/yolks
- ghcr.io/parkervcp/yolks
- ghcr.io/parkervcp/yolks
- ghcr.io/pterodactyl/yolks
- portainer/portainer-ee
- portainer/agent
- ghcr.io/pelican/panel
- ghcr.io/pelican/wings
- ghcr.io/parkervcp/yolks
- node
- linuxserver/socket-proxy
- redis
- lscr.io/linuxserver/bookstack
- ghcr.io/tekkifox/server-maintenance-notification-agent
- lscr.io/linuxserver/mariadb
- garethgeorge/backrest
- postgres
- jc21/nginx-proxy-manager
- ghcr.io/parkervcp/yolks
- ghcr.io/goauthentik/server
- discordgsm/discord-game-server-monitor
- specker/discordplayercountbot
- weejewel/wg-easy
- mariadb
regions
- host
- Ubuntu 25.10
- x86_64Raw snapshot
{
"cluster": "fedafdbd0e73",
"description": "Separate Go service exposing live Docker daemon, container, image, and Linux host telemetry.",
"diagram": "host linux system\n -> docker daemon\n -> container: archview-archview-1 (running)\n -> container: socket-proxy (running)\n -> container: vortexservers_co_uk-web-1 (running)\n -> container: pelican-node (running)\n -> container: pelican-panel (running)\n -> container: npm (running)\n -> container: bookstack (running)\n -> container: authentik-authentik-1 (running)\n -> container: authentik-postgres-1 (running)\n -> container: authentik-worker-1 (running)\n -> container: authentik-redis-1 (running)\n -> container: portainer (running)\n -> container: bookstack_db (running)\n -> container: portainer_edge_agent (running)\n -> container: pelican-database (running)\n -> container: backrest (running)\n -> container: wg-easy (running)\n -> container: server-maintenance-notification-agent-notification-agent-1 (running)\n -> container: server-maintenance-notification-agent-docker-socket-proxy-1 (running)\n -> container: project-zomboid-player-count-discord-bot-1 (running)\n -> container: discord-gsm (running)\n -> container: dishorde (running)\n",
"docker": {
"containers": [
{
"command": "/app/archview",
"created": 1789673818,
"id": "fedafdbd0e7319ea0c2ae2a1b0bcf53ec42899dfd2f244afd423e1fdf14fd74c",
"image": "ghcr.io/tekkifox/archview:latest",
"labels": {
"com.docker.compose.config-hash": "b7615c46beac3d716886e9566e497f313f2c4b7f9399fa52d9b4f22022cceb93",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "socket-proxy:service_healthy:false",
"com.docker.compose.image": "sha256:099a8fac15a0f665ffb014c714fdb635d36bda33be1308b0546065c54429b14a",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "archview",
"com.docker.compose.project.config_files": "/data/compose/38/v2/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/38/v2",
"com.docker.compose.replace": "archview-1",
"com.docker.compose.service": "archview",
"com.docker.compose.version": "",
"org.opencontainers.image.created": "2026-09-17T19:36:27.865Z",
"org.opencontainers.image.description": "Go service to view architecture of system",
"org.opencontainers.image.licenses": "",
"org.opencontainers.image.revision": "51ed0939c76a052b70d815e1f481220202a648dd",
"org.opencontainers.image.source": "https://github.com/tekkifox/archview",
"org.opencontainers.image.title": "archview",
"org.opencontainers.image.url": "https://github.com/tekkifox/archview",
"org.opencontainers.image.version": "latest"
},
"name": "archview-archview-1",
"ports": [
{
"ip": "",
"privatePort": 8080,
"publicPort": 0,
"type": "tcp"
}
],
"state": "running",
"status": "Up 14 hours"
},
{
"command": "/docker-entrypoint.sh",
"created": 1789664519,
"id": "8f680b98cea8ae396c4fcd0a570e4234a8ff57d3de5fb70379ec0012718df80c",
"image": "lscr.io/linuxserver/socket-proxy:latest",
"labels": {
"build_version": "Linuxserver.io version:- 3.4.4-r0-ls97 Build-date:- 2026-09-07T23:06:04+00:00",
"com.docker.compose.config-hash": "cccefc1e8fd3f1ac5ec95ac0994ac777a34e3921aea96c06f8a1183177266197",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:61e17ba9b3d504e983b2d958149edde8ae8732dfc39872cf6769d55ddee15a84",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "archview",
"com.docker.compose.project.config_files": "/data/compose/38/v2/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/38/v2",
"com.docker.compose.replace": "socket-proxy",
"com.docker.compose.service": "socket-proxy",
"com.docker.compose.version": "",
"maintainer": "thespad",
"org.opencontainers.image.authors": "linuxserver.io",
"org.opencontainers.image.created": "2026-09-07T23:06:04+00:00",
"org.opencontainers.image.description": "The Socket Proxy is a security-enhanced proxy which allows you to apply access rules to the Docker socket, limiting the attack surface for containers such as watchtower or Traefik that need to use it.",
"org.opencontainers.image.documentation": "https://docs.linuxserver.io/images/docker-socket-proxy",
"org.opencontainers.image.licenses": "GPL-3.0-only",
"org.opencontainers.image.ref.name": "661b780da46a36b8e187194337648683d3970119",
"org.opencontainers.image.revision": "661b780da46a36b8e187194337648683d3970119",
"org.opencontainers.image.source": "https://github.com/linuxserver/docker-socket-proxy",
"org.opencontainers.image.title": "Socket-proxy",
"org.opencontainers.image.url": "https://github.com/linuxserver/docker-socket-proxy/packages",
"org.opencontainers.image.vendor": "linuxserver.io",
"org.opencontainers.image.version": "3.4.4-r0-ls97"
},
"name": "socket-proxy",
"ports": [],
"state": "running",
"status": "Up 16 hours (healthy)"
},
{
"command": "docker-entrypoint.sh npm start -- -H 0.0.0.0 -p 3000",
"created": 1789425392,
"id": "5a9887ccb330d41e62b6d09fb2cc73eb83c9775e240412f259ad7c7e58329281",
"image": "ghcr.io/tekkifox/vortexservers_co_uk:latest",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "a65c4fc4e820ac18f9f5ae2ed1fd0996dceb0e81ba172d85aa31d65a318a3302",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:ab99211529eb8b210a803d1769be6fe0b09a5fd6376921545df282b938517213",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "vortexservers_co_uk",
"com.docker.compose.project.config_files": "/data/compose/32/v9/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/32/v9",
"com.docker.compose.replace": "web-1",
"com.docker.compose.service": "web",
"com.docker.compose.version": "",
"org.opencontainers.image.created": "2026-09-14T22:35:34.274Z",
"org.opencontainers.image.description": "Website for personal game server host",
"org.opencontainers.image.licenses": "",
"org.opencontainers.image.revision": "595cec28799ce348c6a223b64a109609a13faade",
"org.opencontainers.image.source": "https://github.com/tekkifox/vortexservers_co_uk",
"org.opencontainers.image.title": "vortexservers_co_uk",
"org.opencontainers.image.url": "https://github.com/tekkifox/vortexservers_co_uk",
"org.opencontainers.image.version": "latest"
},
"name": "vortexservers_co_uk-web-1",
"ports": [
{
"ip": "",
"privatePort": 3000,
"publicPort": 0,
"type": "tcp"
}
],
"state": "running",
"status": "Up 3 days"
},
{
"command": "/usr/bin/wings --config /etc/pelican/config.yml",
"created": 1789423674,
"id": "9c2d28664e9f737eed74faaa3aed83159cfb31bede71e125668a1f21e5213038",
"image": "ghcr.io/pelican/wings:latest",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "b4ff0850444ab7f2e1e59730691bc674c712ea13b81e7d872ca425e288f53ce2",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:4721121ed1ffcbd395f8981d9aad758c073b52d95631a3a0ffd2c024f6c54c72",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "pelican-node",
"com.docker.compose.project.config_files": "/data/compose/14/v13/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/14/v13",
"com.docker.compose.replace": "pelican-node",
"com.docker.compose.service": "wings",
"com.docker.compose.version": "",
"org.opencontainers.image.created": "2026-08-16T21:33:10.250Z",
"org.opencontainers.image.description": "",
"org.opencontainers.image.licenses": "MIT",
"org.opencontainers.image.revision": "5bd4d7ec04283c3b05553f6143c92dae6e1dd9b0",
"org.opencontainers.image.source": "https://github.com/pelican/wings",
"org.opencontainers.image.title": "wings",
"org.opencontainers.image.url": "https://github.com/pelican/wings",
"org.opencontainers.image.version": "v1.0.0-beta29"
},
"name": "pelican-node",
"ports": [
{
"ip": "0.0.0.0",
"privatePort": 2022,
"publicPort": 2022,
"type": "tcp"
},
{
"ip": "::",
"privatePort": 2022,
"publicPort": 2022,
"type": "tcp"
},
{
"ip": "",
"privatePort": 8080,
"publicPort": 0,
"type": "tcp"
}
],
"state": "running",
"status": "Up 3 days"
},
{
"command": "/bin/ash /entrypoint.sh supervisord -n -c /etc/supervisord.conf",
"created": 1789422920,
"id": "8eb62e2b006bd2c02c9c9436928a12bca767fa3dc30df10a661db9a6bafb04bd",
"image": "ghcr.io/pelican/panel:latest",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "3cf2bc259ba6b285c66d1eba601094164705d88848787c5b6d1c18b0ea5cdfc8",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "mariadb:service_started:false",
"com.docker.compose.image": "sha256:2b6b4abc362cce26d07ec6effa5832c01da229d8412caaf4d515897409a29ad1",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "pelican-panel",
"com.docker.compose.project.config_files": "/data/compose/11/v15/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/11/v15",
"com.docker.compose.replace": "pelican-panel",
"com.docker.compose.service": "panel",
"com.docker.compose.version": "",
"org.opencontainers.image.created": "2026-08-17T00:05:54.330Z",
"org.opencontainers.image.description": "",
"org.opencontainers.image.licenses": "AGPL-3.0",
"org.opencontainers.image.revision": "e84a4afd466e32f2b376774365185fe0342b73e6",
"org.opencontainers.image.source": "https://github.com/pelican/panel",
"org.opencontainers.image.title": "panel",
"org.opencontainers.image.url": "https://github.com/pelican/panel",
"org.opencontainers.image.version": "main"
},
"name": "pelican-panel",
"ports": [
{
"ip": "",
"privatePort": 80,
"publicPort": 0,
"type": "tcp"
},
{
"ip": "",
"privatePort": 9000,
"publicPort": 0,
"type": "tcp"
},
{
"ip": "",
"privatePort": 443,
"publicPort": 0,
"type": "tcp"
}
],
"state": "running",
"status": "Up 3 days (healthy)"
},
{
"command": "/init",
"created": 1789422770,
"id": "64f370ba6b31ab04a11917917719d3691af6c9760bd91c36ae8184b5e2d4a18f",
"image": "jc21/nginx-proxy-manager:latest",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "d3d51c2e7e6dc5948b98a2650be33af1a24e87b287a5a85eed251ecc2b1dfc3c",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:f44e23f5e4d7d71dae4548e273b498c567311c76502a128f3bc782f528a58087",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "nginx-proxy-manager",
"com.docker.compose.project.config_files": "/data/compose/16/v9/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/16/v9",
"com.docker.compose.replace": "npm",
"com.docker.compose.service": "nginx-proxy-manager",
"com.docker.compose.version": "",
"maintainer": "Jamie Curnow <jc@jc21.com>",
"org.label-schema.cmd": "docker run --rm -ti jc21/nginx-proxy-manager:latest",
"org.label-schema.description": "Docker container for managing Nginx proxy hosts with a simple, powerful interface ",
"org.label-schema.license": "MIT",
"org.label-schema.name": "nginx-proxy-manager",
"org.label-schema.schema-version": "1.0",
"org.label-schema.url": "https://github.com/jc21/nginx-proxy-manager",
"org.label-schema.vcs-url": "https://github.com/jc21/nginx-proxy-manager.git"
},
"name": "npm",
"ports": [
{
"ip": "",
"privatePort": 81,
"publicPort": 0,
"type": "tcp"
},
{
"ip": "0.0.0.0",
"privatePort": 443,
"publicPort": 443,
"type": "tcp"
},
{
"ip": "::",
"privatePort": 443,
"publicPort": 443,
"type": "tcp"
},
{
"ip": "0.0.0.0",
"privatePort": 80,
"publicPort": 80,
"type": "tcp"
},
{
"ip": "::",
"privatePort": 80,
"publicPort": 80,
"type": "tcp"
}
],
"state": "running",
"status": "Up 3 days"
},
{
"command": "/init",
"created": 1789422651,
"id": "83742811be7f48f9488f110fddd947a69312603f5fe66642cf3ab3f309016d6c",
"image": "lscr.io/linuxserver/bookstack:latest",
"labels": {
"build_version": "Linuxserver.io version:- v26.05.2-ls275 Build-date:- 2026-07-20T19:49:34+00:00",
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "e9c5f90d226068469d3f0d1d813a3793c763149e0ca1fdfa8b40a835c7d03b61",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "bookstack_db:service_started:false",
"com.docker.compose.image": "sha256:738442c4fb7c12072d5abe60d23083ac17191077e8e592f33f8aafa9ceaa2eac",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "bookstack",
"com.docker.compose.project.config_files": "/data/compose/25/v9/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/25/v9",
"com.docker.compose.replace": "bookstack",
"com.docker.compose.service": "bookstack",
"com.docker.compose.version": "",
"maintainer": "thespad",
"org.opencontainers.image.authors": "linuxserver.io",
"org.opencontainers.image.created": "2026-07-20T19:49:34+00:00",
"org.opencontainers.image.description": "[Bookstack](https://codeberg.org/bookstack/bookstack) is a free and open source Wiki designed for creating beautiful documentation. Featuring a simple, but powerful WYSIWYG editor it allows for teams to create detailed and useful documentation with ease. Powered by SQL and including a Markdown editor for those who prefer it, BookStack is geared towards making documentation more of a pleasure than a chore. For more information on BookStack visit their website and check it out: https://www.bookstackapp.com ",
"org.opencontainers.image.documentation": "https://docs.linuxserver.io/images/docker-bookstack",
"org.opencontainers.image.licenses": "GPL-3.0-only",
"org.opencontainers.image.ref.name": "6658332e6dfa0d82a0245d5042ebb2a2b7af9909",
"org.opencontainers.image.revision": "6658332e6dfa0d82a0245d5042ebb2a2b7af9909",
"org.opencontainers.image.source": "https://github.com/linuxserver/docker-bookstack",
"org.opencontainers.image.title": "Bookstack",
"org.opencontainers.image.url": "https://github.com/linuxserver/docker-bookstack/packages",
"org.opencontainers.image.vendor": "linuxserver.io",
"org.opencontainers.image.version": "v26.05.2-ls275"
},
"name": "bookstack",
"ports": [
{
"ip": "",
"privatePort": 443,
"publicPort": 0,
"type": "tcp"
},
{
"ip": "",
"privatePort": 80,
"publicPort": 0,
"type": "tcp"
}
],
"state": "running",
"status": "Up 3 days"
},
{
"command": "dumb-init -- ak server",
"created": 1789422498,
"id": "dbdd54575b680483da469156916f85009629a08492d4e074981c8873b6ee3f19",
"image": "ghcr.io/goauthentik/server:2026.5.0",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "bb4403bc632a56baf18ef0eb99d964c0d04dec87b483f4f9db7fe82d159c8b65",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:c509858a51771f2a1b94b57eb4443fcef95f4abda6b4a935e0e16918a05bd705",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "authentik",
"com.docker.compose.project.config_files": "/data/compose/31/v8/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/31/v8",
"com.docker.compose.service": "authentik",
"com.docker.compose.version": "",
"org.opencontainers.image.authors": "Authentik Security Inc.",
"org.opencontainers.image.description": "goauthentik.io Main server image, see https://goauthentik.io for more info.",
"org.opencontainers.image.documentation": "https://docs.goauthentik.io",
"org.opencontainers.image.licenses": "https://github.com/goauthentik/authentik/blob/main/LICENSE",
"org.opencontainers.image.revision": "",
"org.opencontainers.image.source": "https://github.com/goauthentik/authentik",
"org.opencontainers.image.title": "authentik server image",
"org.opencontainers.image.url": "https://goauthentik.io",
"org.opencontainers.image.vendor": "Authentik Security Inc.",
"org.opencontainers.image.version": "refs/tags/version/2026.5.0"
},
"name": "authentik-authentik-1",
"ports": [],
"state": "running",
"status": "Up 3 days (healthy)"
},
{
"command": "docker-entrypoint.sh postgres",
"created": 1789422498,
"id": "18eb1c569871b2447eb08f9b2eb6ae0712f2ef22a04796a9dac48e51b36f0eea",
"image": "docker.io/library/postgres:16-alpine",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "65573874153573b81da9c879eaef43d307acaafda0c86af1c76ce8c7b11b1408",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:de3a4eab8fdfa507ea92aac488b916b08089e515db49b055fe71dfa271ba3a28",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "authentik",
"com.docker.compose.project.config_files": "/data/compose/31/v8/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/31/v8",
"com.docker.compose.service": "postgresql",
"com.docker.compose.version": ""
},
"name": "authentik-postgres-1",
"ports": [
{
"ip": "",
"privatePort": 5432,
"publicPort": 0,
"type": "tcp"
}
],
"state": "running",
"status": "Up 3 days (healthy)"
},
{
"command": "dumb-init -- ak worker",
"created": 1789422498,
"id": "16370c9a5df707c85714cea6b7c0efcc7551bcaf9cef28d4ab2c709be86f26b8",
"image": "ghcr.io/goauthentik/server:2026.5.0",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "7413f1cca0c011e0b5aa475374955df8fa2cdd264ec69f6db337c5a3aa6682cf",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:c509858a51771f2a1b94b57eb4443fcef95f4abda6b4a935e0e16918a05bd705",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "authentik",
"com.docker.compose.project.config_files": "/data/compose/31/v8/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/31/v8",
"com.docker.compose.service": "worker",
"com.docker.compose.version": "",
"org.opencontainers.image.authors": "Authentik Security Inc.",
"org.opencontainers.image.description": "goauthentik.io Main server image, see https://goauthentik.io for more info.",
"org.opencontainers.image.documentation": "https://docs.goauthentik.io",
"org.opencontainers.image.licenses": "https://github.com/goauthentik/authentik/blob/main/LICENSE",
"org.opencontainers.image.revision": "",
"org.opencontainers.image.source": "https://github.com/goauthentik/authentik",
"org.opencontainers.image.title": "authentik server image",
"org.opencontainers.image.url": "https://goauthentik.io",
"org.opencontainers.image.vendor": "Authentik Security Inc.",
"org.opencontainers.image.version": "refs/tags/version/2026.5.0"
},
"name": "authentik-worker-1",
"ports": [],
"state": "running",
"status": "Up 3 days (healthy)"
},
{
"command": "docker-entrypoint.sh --save 60 1 --loglevel warning",
"created": 1789422498,
"id": "6dbca4a8f46509bdedbabb257ad60380de1cc65187bb761f439291f536459411",
"image": "docker.io/library/redis:alpine",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "3d7a108c676420ec98964045e16f649ae652e01d80e2a92a5d644539654409db",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:cc48e0fe25c0095fb69b711b6c110b3801e7b30189e14358a5f16d4a747c9ec0",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "authentik",
"com.docker.compose.project.config_files": "/data/compose/31/v8/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/31/v8",
"com.docker.compose.service": "redis",
"com.docker.compose.version": ""
},
"name": "authentik-redis-1",
"ports": [
{
"ip": "",
"privatePort": 6379,
"publicPort": 0,
"type": "tcp"
}
],
"state": "running",
"status": "Up 3 days (healthy)"
},
{
"command": "/portainer",
"created": 1789421569,
"id": "73f6ea8d84039419299bf7443c30bc1819294fc7fbf6fc0040253129708a2ed9",
"image": "portainer/portainer-ee:sts",
"labels": {
"com.docker.compose.config-hash": "d558aa9215007428dad6a02ebad8b8e9f5bbc5ad9ddb379abde8f1c1536a8300",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:dd0853ef7a7d06dd4aa014f78852685fb59bed7bbd704f487796de8f5b8a07ed",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "portainer",
"com.docker.compose.project.config_files": "/mnt/portainer/compose.yaml",
"com.docker.compose.project.working_dir": "/mnt/portainer",
"com.docker.compose.replace": "portainer",
"com.docker.compose.service": "portainer",
"com.docker.compose.version": "2.40.3",
"git_commit": "0f3812e",
"io.portainer.server": "true",
"org.opencontainers.image.created": "2026-08-27T04:33:28Z",
"org.opencontainers.image.description": "Portainer Business Edition server.",
"org.opencontainers.image.documentation": "https://docs.portainer.io",
"org.opencontainers.image.revision": "0f3812e",
"org.opencontainers.image.title": "Portainer EE",
"org.opencontainers.image.url": "https://www.portainer.io",
"org.opencontainers.image.vendor": "Portainer.io"
},
"name": "portainer",
"ports": [
{
"ip": "",
"privatePort": 9000,
"publicPort": 0,
"type": "tcp"
},
{
"ip": "0.0.0.0",
"privatePort": 9443,
"publicPort": 9443,
"type": "tcp"
},
{
"ip": "::",
"privatePort": 9443,
"publicPort": 9443,
"type": "tcp"
},
{
"ip": "",
"privatePort": 8000,
"publicPort": 0,
"type": "tcp"
}
],
"state": "running",
"status": "Up 3 days"
},
{
"command": "/init",
"created": 1788819938,
"id": "3b2dd55d49f546c9525f16c00daf1f273144afaee74e863984d379500b46b670",
"image": "lscr.io/linuxserver/mariadb:latest",
"labels": {
"build_version": "Linuxserver.io version:- 11.8.8-r0-ls225 Build-date:- 2026-07-14T19:31:45+00:00",
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "a44d288df38da8d329dd8bc4eef849c8731abd78f63b1a99f5e7bccb3d110c04",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:0453ec8a2e1131cc3420ea9b6261d66916b175876ff682c988055c7bbc904f59",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "bookstack",
"com.docker.compose.project.config_files": "/data/compose/25/v8/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/25/v8",
"com.docker.compose.service": "bookstack_db",
"com.docker.compose.version": "",
"maintainer": "thelamer,nemchik",
"org.opencontainers.image.authors": "linuxserver.io",
"org.opencontainers.image.created": "2026-07-14T19:31:45+00:00",
"org.opencontainers.image.description": "[Mariadb](https://mariadb.org/) is one of the most popular database servers. Made by the original developers of MySQL.",
"org.opencontainers.image.documentation": "https://docs.linuxserver.io/images/docker-mariadb",
"org.opencontainers.image.licenses": "GPL-3.0-only",
"org.opencontainers.image.ref.name": "0c29ee565913170d71d00e888cafe3c330ea7c1a",
"org.opencontainers.image.revision": "0c29ee565913170d71d00e888cafe3c330ea7c1a",
"org.opencontainers.image.source": "https://github.com/linuxserver/docker-mariadb",
"org.opencontainers.image.title": "Mariadb",
"org.opencontainers.image.url": "https://github.com/linuxserver/docker-mariadb/packages",
"org.opencontainers.image.vendor": "linuxserver.io",
"org.opencontainers.image.version": "11.8.8-r0-ls225"
},
"name": "bookstack_db",
"ports": [
{
"ip": "",
"privatePort": 3306,
"publicPort": 0,
"type": "tcp"
}
],
"state": "running",
"status": "Up 4 days"
},
{
"command": "./agent",
"created": 1788819577,
"id": "70d8e432cd4aa7e7958fe819005c6c76255b995ad9ec858a95d58a728b362af0",
"image": "portainer/agent:2.45.0",
"labels": {
"com.docker.compose.config-hash": "ee04bda4a16ebf7a23a983ba71ccef1cdb04ee76e49153772d4948e6de14b9fb",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:301c1d744ec8f4268056ba749c51af9dbdddbdc9d5cce05b4cb8a9163a9e2c20",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "portainer",
"com.docker.compose.project.config_files": "/mnt/portainer/compose.yaml",
"com.docker.compose.project.working_dir": "/mnt/portainer",
"com.docker.compose.replace": "portainer_edge_agent",
"com.docker.compose.service": "portainer_edge_agent",
"com.docker.compose.version": "2.40.3",
"git_commit": "0f3812e",
"io.portainer.agent": "true",
"org.opencontainers.image.created": "2026-08-27T04:30:54Z",
"org.opencontainers.image.description": "Portainer agent for managing environments.",
"org.opencontainers.image.documentation": "https://docs.portainer.io",
"org.opencontainers.image.revision": "0f3812e",
"org.opencontainers.image.title": "Portainer Agent",
"org.opencontainers.image.url": "https://www.portainer.io",
"org.opencontainers.image.vendor": "Portainer.io"
},
"name": "portainer_edge_agent",
"ports": [],
"state": "running",
"status": "Up 4 days"
},
{
"command": "docker-entrypoint.sh mariadbd",
"created": 1788810576,
"id": "689352a789e7fdd9c2f58d50b73a4d7230a6b1fb661d2ee5631aebe6041ca7da",
"image": "docker.io/library/mariadb:10.6.7",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "937dcc0366bed9ee4b4b7dabd363ef3f7acd0d87159578542754194099f6fbba",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:3a25dc0f17778b385ee12f40b5dadd398ec4fb710ccde51e7e4af2c9c5555d3f",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "pelican-panel",
"com.docker.compose.project.config_files": "/data/compose/11/v13/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/11/v13",
"com.docker.compose.replace": "pelican-database",
"com.docker.compose.service": "mariadb",
"com.docker.compose.version": ""
},
"name": "pelican-database",
"ports": [
{
"ip": "",
"privatePort": 3306,
"publicPort": 0,
"type": "tcp"
}
],
"state": "running",
"status": "Up 4 days"
},
{
"command": "/sbin/tini -- /docker-entrypoint /backrest",
"created": 1788802519,
"id": "9d3465aef1fb174df8d9fdddd11d7fbf0e9c31e05df73650749de0780ab516c6",
"image": "garethgeorge/backrest:latest",
"labels": {
"com.docker.compose.config-hash": "7009ea041e9b489751be5e82914666b742a1f071cadc27bdf75223ef8115fef2",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:738946892ff31fe3367169119ca9f941d361bdfd0af85fb45754df33db4a0ec7",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "backrest",
"com.docker.compose.project.config_files": "/data/compose/36/v5/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/36",
"com.docker.compose.replace": "backrest",
"com.docker.compose.service": "backrest",
"com.docker.compose.version": "",
"org.opencontainers.image.source": "https://github.com/garethgeorge/backrest"
},
"name": "backrest",
"ports": [],
"state": "running",
"status": "Up 4 days"
},
{
"command": "docker-entrypoint.sh /usr/bin/dumb-init node server.js",
"created": 1786314207,
"id": "98313997a24d62faa5e4f99d0bafc82a68d58401c7100fae0d1a54d60ed24ac4",
"image": "weejewel/wg-easy",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "467115ce689b624af4bde0a74948b462d8ff8bbd8b2a115537e452d1d8f8fc93",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:c90b263d8a383ac55905e4edbe1513ba87b1a479bcaa8bb471412137b9541751",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "wireguard",
"com.docker.compose.project.config_files": "/data/compose/17/v2/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/17/v2",
"com.docker.compose.replace": "wg-easy",
"com.docker.compose.service": "wg-easy",
"com.docker.compose.version": ""
},
"name": "wg-easy",
"ports": [
{
"ip": "0.0.0.0",
"privatePort": 51820,
"publicPort": 51820,
"type": "udp"
},
{
"ip": "::",
"privatePort": 51820,
"publicPort": 51820,
"type": "udp"
},
{
"ip": "0.0.0.0",
"privatePort": 51821,
"publicPort": 51821,
"type": "tcp"
},
{
"ip": "::",
"privatePort": 51821,
"publicPort": 51821,
"type": "tcp"
}
],
"state": "running",
"status": "Up 4 days"
},
{
"command": "/app/notification-agent",
"created": 1786314084,
"id": "96d01c015b4b40241126e9af847a43601129e0084c9ec2423a8b1c08d3770094",
"image": "ghcr.io/tekkifox/server-maintenance-notification-agent:latest",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "a6ad3e82b0bf42f0d1a2e6dbd55324bf3990961374fd51013087d9b193022801",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "docker-socket-proxy:service_started:false",
"com.docker.compose.image": "sha256:3746fbb148abcd2faa9d57f90ab6b82fb1fbb8c273dd5dfd9c1e980dc2166e4f",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "server-maintenance-notification-agent",
"com.docker.compose.project.config_files": "/data/compose/33/v10/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/33/v10",
"com.docker.compose.replace": "notification-agent-1",
"com.docker.compose.service": "notification-agent",
"com.docker.compose.version": "",
"org.opencontainers.image.created": "2026-07-15T16:32:54.791Z",
"org.opencontainers.image.description": "",
"org.opencontainers.image.licenses": "",
"org.opencontainers.image.revision": "b33d28e6bf7a335a66545b5f3e0c842f7e572f28",
"org.opencontainers.image.source": "https://github.com/tekkifox/server-maintenance-notification-agent",
"org.opencontainers.image.title": "server-maintenance-notification-agent",
"org.opencontainers.image.url": "https://github.com/tekkifox/server-maintenance-notification-agent",
"org.opencontainers.image.version": "latest"
},
"name": "server-maintenance-notification-agent-notification-agent-1",
"ports": [
{
"ip": "127.0.0.1",
"privatePort": 8080,
"publicPort": 8080,
"type": "tcp"
}
],
"state": "running",
"status": "Up 4 days"
},
{
"command": "/docker-entrypoint.sh",
"created": 1786314084,
"id": "242d32c58997dadf8f217b9e1ac4db8e1255d5062612fc0190257559342d4923",
"image": "linuxserver/socket-proxy:latest",
"labels": {
"build_version": "Linuxserver.io version:- 3.4.3-r0-ls91 Build-date:- 2026-08-05T10:05:07+00:00",
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "44b21425768f8ce7060bc5ac5993a2fa8a1d9eb51d4e11cbaf82a416c3b05f4f",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:f98926ad095d5facf628801ca102c1f59c378b8d97c850148f025452444b32de",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "server-maintenance-notification-agent",
"com.docker.compose.project.config_files": "/data/compose/33/v10/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/33/v10",
"com.docker.compose.replace": "docker-socket-proxy-1",
"com.docker.compose.service": "docker-socket-proxy",
"com.docker.compose.version": "",
"maintainer": "thespad",
"org.opencontainers.image.authors": "linuxserver.io",
"org.opencontainers.image.created": "2026-08-05T10:05:07+00:00",
"org.opencontainers.image.description": "The Socket Proxy is a security-enhanced proxy which allows you to apply access rules to the Docker socket, limiting the attack surface for containers such as watchtower or Traefik that need to use it.",
"org.opencontainers.image.documentation": "https://docs.linuxserver.io/images/docker-socket-proxy",
"org.opencontainers.image.licenses": "GPL-3.0-only",
"org.opencontainers.image.ref.name": "0a0023ac0e1a2da66e2dfcd476a21eeeb56e6d2c",
"org.opencontainers.image.revision": "0a0023ac0e1a2da66e2dfcd476a21eeeb56e6d2c",
"org.opencontainers.image.source": "https://github.com/linuxserver/docker-socket-proxy",
"org.opencontainers.image.title": "Socket-proxy",
"org.opencontainers.image.url": "https://github.com/linuxserver/docker-socket-proxy/packages",
"org.opencontainers.image.vendor": "linuxserver.io",
"org.opencontainers.image.version": "3.4.3-r0-ls91"
},
"name": "server-maintenance-notification-agent-docker-socket-proxy-1",
"ports": [],
"state": "running",
"status": "Up 4 days"
},
{
"command": "dotnet DiscordPlayerCountBot.dll",
"created": 1786314004,
"id": "0fb18be4e58193ccf544a44f0e32a699f02679e40fe22af35a03679c446562c1",
"image": "specker/discordplayercountbot",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "08e41f776749c07e2373bb09003cccc927beff0dafaf77c2da9ea8d2cf732fe3",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:d792adc9de370ac388c4c6847e9bd0cf7dc96a56edb4dc24a6e2863dfaff107d",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "project-zomboid-player-count",
"com.docker.compose.project.config_files": "/data/compose/15/v3/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/15/v3",
"com.docker.compose.replace": "discord-bot-1",
"com.docker.compose.service": "discord-bot",
"com.docker.compose.version": ""
},
"name": "project-zomboid-player-count-discord-bot-1",
"ports": [],
"state": "running",
"status": "Up 4 days"
},
{
"command": "python main.py",
"created": 1786313865,
"id": "579e333d9aa605c8d69691e02b9691c034ae6b8689d92e9806e6b145d2765acc",
"image": "discordgsm/discord-game-server-monitor:latest",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "1240a32a82e12042b29ea515a01636240d793bcebfde6422bce3952ae8cd45c0",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:0e4f2d933d0fab64de1460a63f9c0f9c51bf855e1b9377945136cd7b8f48e552",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "discordgsm",
"com.docker.compose.project.config_files": "/data/compose/2/v3/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/2/v3",
"com.docker.compose.replace": "discord-gsm",
"com.docker.compose.service": "discord-gsm",
"com.docker.compose.version": "",
"org.opencontainers.image.created": "2026-01-09T06:19:48.797Z",
"org.opencontainers.image.description": "๐บ A discord bot that monitors your game server and tracks the live data of your game servers. Supports over 260 game servers.",
"org.opencontainers.image.licenses": "MIT",
"org.opencontainers.image.revision": "17d2e124a3d7a4b4cc4b64bada325f363fb162da",
"org.opencontainers.image.source": "https://github.com/DiscordGSM/GameServerMonitor",
"org.opencontainers.image.title": "GameServerMonitor",
"org.opencontainers.image.url": "https://github.com/DiscordGSM/GameServerMonitor",
"org.opencontainers.image.version": "2.20.1"
},
"name": "discord-gsm",
"ports": [],
"state": "running",
"status": "Up 4 days"
},
{
"command": "docker-entrypoint.sh /dishorde/run.sh",
"created": 1786313164,
"id": "47a0955efd9e3b00801f5bdab73473dda23ac63f69c9ce5d97abe5fe131eb373",
"image": "node",
"labels": {
"com.docker.compose.config-hash": "ef1a99f4f6e95258207527d28bcb2341517535628e054321eedb0bc517bf3301",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:abc0e1c4fa20e0a630d1229cb20b48368e67ef79ce959f825a438376bcdff1dd",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "dishorde-7dtd-discord-connector",
"com.docker.compose.project.config_files": "/data/compose/23/v2/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/23/v2",
"com.docker.compose.replace": "dishorde",
"com.docker.compose.service": "dishorde",
"com.docker.compose.version": ""
},
"name": "dishorde",
"ports": [],
"state": "running",
"status": "Up 4 days"
}
],
"daemon": {
"apiVersion": "",
"architecture": "x86_64",
"containers": 45,
"containersRunning": 36,
"dockerRootDir": "/var/lib/docker",
"driver": "overlay2",
"images": 34,
"kernelVersion": "6.17.0-41-generic",
"memoryTotalBytes": 67217682432,
"ncpu": 20,
"operatingSystem": "Ubuntu 25.10",
"serverVersion": "29.1.3"
},
"images": [
{
"created": 1789673804,
"dangling": false,
"id": "sha256:099a8fac15a0f665ffb014c714fdb635d36bda33be1308b0546065c54429b14a",
"repoTags": [
"ghcr.io/tekkifox/archview:latest"
],
"sizeBytes": 19316877
},
{
"created": 1789425368,
"dangling": false,
"id": "sha256:ab99211529eb8b210a803d1769be6fe0b09a5fd6376921545df282b938517213",
"repoTags": [
"ghcr.io/tekkifox/vortexservers_co_uk:latest"
],
"sizeBytes": 477831395
},
{
"created": 1789357464,
"dangling": false,
"id": "sha256:c9eb67ae845c11f3265eb8f5bd4a870c30c8cae66ed617e5c5c14f1d84d828dc",
"repoTags": [
"ghcr.io/parkervcp/steamcmd:debian"
],
"sizeBytes": 885034193
},
{
"created": 1788822452,
"dangling": false,
"id": "sha256:61e17ba9b3d504e983b2d958149edde8ae8732dfc39872cf6769d55ddee15a84",
"repoTags": [
"lscr.io/linuxserver/socket-proxy:latest"
],
"sizeBytes": 15959492
},
{
"created": 1788754030,
"dangling": false,
"id": "sha256:cc92777a0ba93396bcb925ce99e9c3dffa19cdd3874520aae87f582918b68522",
"repoTags": [
"ghcr.io/parkervcp/yolks:dotnet_9"
],
"sizeBytes": 1287632760
},
{
"created": 1788751107,
"dangling": false,
"id": "sha256:cbc5ef1ff1efde8abe82c00f6839f763d6c787b3bab86af9f8ab1f82a4324ec0",
"repoTags": [
"ghcr.io/parkervcp/steamcmd:proton"
],
"sizeBytes": 3252625245
},
{
"created": 1788750538,
"dangling": false,
"id": "sha256:e7c65fb74d96d641f230e5ae8e4f0d5b363639cb272ff9f8c149e90714ea1f9c",
"repoTags": [
"ghcr.io/parkervcp/yolks:mariadb_10.3"
],
"sizeBytes": 427873525
},
{
"created": 1788748091,
"dangling": false,
"id": "sha256:9c64a8e3e4d41104de284162b9ec6467118cb6abc8dff581f3dc691a913ab082",
"repoTags": [
"ghcr.io/parkervcp/yolks:java_25"
],
"sizeBytes": 553014874
},
{
"created": 1788746719,
"dangling": false,
"id": "sha256:a0811785564c09aad2e569b07128712d8a9f2d2e93546ea3571a99ec815a25f5",
"repoTags": [
"ghcr.io/parkervcp/yolks:debian"
],
"sizeBytes": 664667891
},
{
"created": 1788231363,
"dangling": false,
"id": "sha256:8acf5c7f9a401eaa0cf1381b3f68df3864d07547cf50fc354f6a1219e2dcd023",
"repoTags": [
"ghcr.io/pterodactyl/yolks:java_8"
],
"sizeBytes": 516534014
},
{
"created": 1787805214,
"dangling": false,
"id": "sha256:dd0853ef7a7d06dd4aa014f78852685fb59bed7bbd704f487796de8f5b8a07ed",
"repoTags": [
"portainer/portainer-ee:sts"
],
"sizeBytes": 223691652
},
{
"created": 1787805061,
"dangling": false,
"id": "sha256:301c1d744ec8f4268056ba749c51af9dbdddbdc9d5cce05b4cb8a9163a9e2c20",
"repoTags": [
"portainer/agent:2.45.0"
],
"sizeBytes": 153199236
},
{
"created": 1786925236,
"dangling": false,
"id": "sha256:2b6b4abc362cce26d07ec6effa5832c01da229d8412caaf4d515897409a29ad1",
"repoTags": [
"ghcr.io/pelican/panel:latest"
],
"sizeBytes": 518809637
},
{
"created": 1786916136,
"dangling": false,
"id": "sha256:4721121ed1ffcbd395f8981d9aad758c073b52d95631a3a0ffd2c024f6c54c72",
"repoTags": [
"ghcr.io/pelican/wings:latest"
],
"sizeBytes": 42389817
},
{
"created": 1786324645,
"dangling": false,
"id": "sha256:e083ac39ef6b36ec4abd2bb3c5cbbaf7ef726ab6010a4bb4283969aa524b3ae1",
"repoTags": [
"ghcr.io/parkervcp/yolks:java_21"
],
"sizeBytes": 598638658
},
{
"created": 1785964812,
"dangling": false,
"id": "sha256:abc0e1c4fa20e0a630d1229cb20b48368e67ef79ce959f825a438376bcdff1dd",
"repoTags": [
"node:latest"
],
"sizeBytes": 1242779892
},
{
"created": 1785924393,
"dangling": false,
"id": "sha256:f98926ad095d5facf628801ca102c1f59c378b8d97c850148f025452444b32de",
"repoTags": [
"linuxserver/socket-proxy:latest"
],
"sizeBytes": 15945446
},
{
"created": 1785440531,
"dangling": false,
"id": "sha256:cc48e0fe25c0095fb69b711b6c110b3801e7b30189e14358a5f16d4a747c9ec0",
"repoTags": [
"redis:alpine"
],
"sizeBytes": 118619095
},
{
"created": 1784577067,
"dangling": false,
"id": "sha256:738442c4fb7c12072d5abe60d23083ac17191077e8e592f33f8aafa9ceaa2eac",
"repoTags": [
"lscr.io/linuxserver/bookstack:latest"
],
"sizeBytes": 377693148
},
{
"created": 1784133224,
"dangling": false,
"id": "sha256:3746fbb148abcd2faa9d57f90ab6b82fb1fbb8c273dd5dfd9c1e980dc2166e4f",
"repoTags": [
"ghcr.io/tekkifox/server-maintenance-notification-agent:latest"
],
"sizeBytes": 36400001
},
{
"created": 1784057608,
"dangling": false,
"id": "sha256:0453ec8a2e1131cc3420ea9b6261d66916b175876ff682c988055c7bbc904f59",
"repoTags": [
"lscr.io/linuxserver/mariadb:latest"
],
"sizeBytes": 359583218
},
{
"created": 1783831652,
"dangling": false,
"id": "sha256:738946892ff31fe3367169119ca9f941d361bdfd0af85fb45754df33db4a0ec7",
"repoTags": [
"garethgeorge/backrest:latest"
],
"sizeBytes": 226798014
},
{
"created": 1783446440,
"dangling": false,
"id": "sha256:de3a4eab8fdfa507ea92aac488b916b08089e515db49b055fe71dfa271ba3a28",
"repoTags": [
"postgres:16-alpine"
],
"sizeBytes": 294211945
},
{
"created": 1780461120,
"dangling": false,
"id": "sha256:f44e23f5e4d7d71dae4548e273b498c567311c76502a128f3bc782f528a58087",
"repoTags": [
"jc21/nginx-proxy-manager:latest"
],
"sizeBytes": 1199224375
},
{
"created": 1779675310,
"dangling": false,
"id": "sha256:b6f09b3af1260c555f4f7192eaaad208c68ad0757415def2e015290c0f532fd5",
"repoTags": [
"ghcr.io/parkervcp/yolks:wine_staging"
],
"sizeBytes": 3799916392
},
{
"created": 1779411151,
"dangling": false,
"id": "sha256:c509858a51771f2a1b94b57eb4443fcef95f4abda6b4a935e0e16918a05bd705",
"repoTags": [
"ghcr.io/goauthentik/server:2026.5.0"
],
"sizeBytes": 1247606149
},
{
"created": 1767939608,
"dangling": false,
"id": "sha256:0e4f2d933d0fab64de1460a63f9c0f9c51bf855e1b9377945136cd7b8f48e552",
"repoTags": [
"discordgsm/discord-game-server-monitor:latest"
],
"sizeBytes": 90778224
},
{
"created": 1741238614,
"dangling": false,
"id": "sha256:d792adc9de370ac388c4c6847e9bd0cf7dc96a56edb4dc24a6e2863dfaff107d",
"repoTags": [
"specker/discordplayercountbot:latest"
],
"sizeBytes": 232277963
},
{
"created": 1656235856,
"dangling": false,
"id": "sha256:c90b263d8a383ac55905e4edbe1513ba87b1a479bcaa8bb471412137b9541751",
"repoTags": [
"weejewel/wg-easy:latest"
],
"sizeBytes": 141586777
},
{
"created": 1651281536,
"dangling": false,
"id": "sha256:3a25dc0f17778b385ee12f40b5dadd398ec4fb710ccde51e7e4af2c9c5555d3f",
"repoTags": [
"mariadb:10.6.7"
],
"sizeBytes": 412844662
}
]
},
"environment": "docker",
"extra": {
"containerCount": 22,
"imageCount": 30
},
"nodes": [
{
"details": {
"kernel": "Linux version 6.17.0-41-generic (buildd@lcy02-amd64-047) (x86_64-linux-gnu-gcc (Ubuntu 15.2.0-4ubuntu4) 15.2.0, GNU ld (GNU Binutils for Ubuntu) 2.45) #41-Ubuntu SMP PREEMPT_DYNAMIC Sat Jun 20 18:01:40 UTC 2026",
"os": "Ubuntu 25.10"
},
"kind": "linux-host",
"name": "fedafdbd0e73",
"status": "3.81 load average"
},
{
"details": {
"image": "ghcr.io/tekkifox/archview:latest"
},
"kind": "container",
"name": "archview-archview-1",
"status": "running"
},
{
"details": {
"image": "lscr.io/linuxserver/socket-proxy:latest"
},
"kind": "container",
"name": "socket-proxy",
"status": "running"
},
{
"details": {
"image": "ghcr.io/tekkifox/vortexservers_co_uk:latest"
},
"kind": "container",
"name": "vortexservers_co_uk-web-1",
"status": "running"
},
{
"details": {
"image": "ghcr.io/pelican/wings:latest"
},
"kind": "container",
"name": "pelican-node",
"status": "running"
},
{
"details": {
"image": "ghcr.io/pelican/panel:latest"
},
"kind": "container",
"name": "pelican-panel",
"status": "running"
},
{
"details": {
"image": "jc21/nginx-proxy-manager:latest"
},
"kind": "container",
"name": "npm",
"status": "running"
},
{
"details": {
"image": "lscr.io/linuxserver/bookstack:latest"
},
"kind": "container",
"name": "bookstack",
"status": "running"
},
{
"details": {
"image": "ghcr.io/goauthentik/server:2026.5.0"
},
"kind": "container",
"name": "authentik-authentik-1",
"status": "running"
},
{
"details": {
"image": "docker.io/library/postgres:16-alpine"
},
"kind": "container",
"name": "authentik-postgres-1",
"status": "running"
},
{
"details": {
"image": "ghcr.io/goauthentik/server:2026.5.0"
},
"kind": "container",
"name": "authentik-worker-1",
"status": "running"
},
{
"details": {
"image": "docker.io/library/redis:alpine"
},
"kind": "container",
"name": "authentik-redis-1",
"status": "running"
},
{
"details": {
"image": "portainer/portainer-ee:sts"
},
"kind": "container",
"name": "portainer",
"status": "running"
},
{
"details": {
"image": "lscr.io/linuxserver/mariadb:latest"
},
"kind": "container",
"name": "bookstack_db",
"status": "running"
},
{
"details": {
"image": "portainer/agent:2.45.0"
},
"kind": "container",
"name": "portainer_edge_agent",
"status": "running"
},
{
"details": {
"image": "docker.io/library/mariadb:10.6.7"
},
"kind": "container",
"name": "pelican-database",
"status": "running"
},
{
"details": {
"image": "garethgeorge/backrest:latest"
},
"kind": "container",
"name": "backrest",
"status": "running"
},
{
"details": {
"image": "weejewel/wg-easy"
},
"kind": "container",
"name": "wg-easy",
"status": "running"
},
{
"details": {
"image": "ghcr.io/tekkifox/server-maintenance-notification-agent:latest"
},
"kind": "container",
"name": "server-maintenance-notification-agent-notification-agent-1",
"status": "running"
},
{
"details": {
"image": "linuxserver/socket-proxy:latest"
},
"kind": "container",
"name": "server-maintenance-notification-agent-docker-socket-proxy-1",
"status": "running"
},
{
"details": {
"image": "specker/discordplayercountbot"
},
"kind": "container",
"name": "project-zomboid-player-count-discord-bot-1",
"status": "running"
},
{
"details": {
"image": "discordgsm/discord-game-server-monitor:latest"
},
"kind": "container",
"name": "discord-gsm",
"status": "running"
},
{
"details": {
"image": "node"
},
"kind": "container",
"name": "dishorde",
"status": "running"
}
],
"region": "Ubuntu 25.10",
"regions": [
"host",
"Ubuntu 25.10",
"x86_64"
],
"services": [
{
"image": "ghcr.io/tekkifox/archview:latest",
"kind": "container",
"labels": {
"com.docker.compose.config-hash": "b7615c46beac3d716886e9566e497f313f2c4b7f9399fa52d9b4f22022cceb93",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "socket-proxy:service_healthy:false",
"com.docker.compose.image": "sha256:099a8fac15a0f665ffb014c714fdb635d36bda33be1308b0546065c54429b14a",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "archview",
"com.docker.compose.project.config_files": "/data/compose/38/v2/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/38/v2",
"com.docker.compose.replace": "archview-1",
"com.docker.compose.service": "archview",
"com.docker.compose.version": "",
"org.opencontainers.image.created": "2026-09-17T19:36:27.865Z",
"org.opencontainers.image.description": "Go service to view architecture of system",
"org.opencontainers.image.licenses": "",
"org.opencontainers.image.revision": "51ed0939c76a052b70d815e1f481220202a648dd",
"org.opencontainers.image.source": "https://github.com/tekkifox/archview",
"org.opencontainers.image.title": "archview",
"org.opencontainers.image.url": "https://github.com/tekkifox/archview",
"org.opencontainers.image.version": "latest"
},
"name": "archview-archview-1",
"ports": [
{
"ip": "",
"privatePort": 8080,
"publicPort": 0,
"type": "tcp"
}
],
"status": "Up 14 hours"
},
{
"image": "lscr.io/linuxserver/socket-proxy:latest",
"kind": "container",
"labels": {
"build_version": "Linuxserver.io version:- 3.4.4-r0-ls97 Build-date:- 2026-09-07T23:06:04+00:00",
"com.docker.compose.config-hash": "cccefc1e8fd3f1ac5ec95ac0994ac777a34e3921aea96c06f8a1183177266197",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:61e17ba9b3d504e983b2d958149edde8ae8732dfc39872cf6769d55ddee15a84",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "archview",
"com.docker.compose.project.config_files": "/data/compose/38/v2/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/38/v2",
"com.docker.compose.replace": "socket-proxy",
"com.docker.compose.service": "socket-proxy",
"com.docker.compose.version": "",
"maintainer": "thespad",
"org.opencontainers.image.authors": "linuxserver.io",
"org.opencontainers.image.created": "2026-09-07T23:06:04+00:00",
"org.opencontainers.image.description": "The Socket Proxy is a security-enhanced proxy which allows you to apply access rules to the Docker socket, limiting the attack surface for containers such as watchtower or Traefik that need to use it.",
"org.opencontainers.image.documentation": "https://docs.linuxserver.io/images/docker-socket-proxy",
"org.opencontainers.image.licenses": "GPL-3.0-only",
"org.opencontainers.image.ref.name": "661b780da46a36b8e187194337648683d3970119",
"org.opencontainers.image.revision": "661b780da46a36b8e187194337648683d3970119",
"org.opencontainers.image.source": "https://github.com/linuxserver/docker-socket-proxy",
"org.opencontainers.image.title": "Socket-proxy",
"org.opencontainers.image.url": "https://github.com/linuxserver/docker-socket-proxy/packages",
"org.opencontainers.image.vendor": "linuxserver.io",
"org.opencontainers.image.version": "3.4.4-r0-ls97"
},
"name": "socket-proxy",
"status": "Up 16 hours (healthy)"
},
{
"image": "ghcr.io/tekkifox/vortexservers_co_uk:latest",
"kind": "container",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "a65c4fc4e820ac18f9f5ae2ed1fd0996dceb0e81ba172d85aa31d65a318a3302",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:ab99211529eb8b210a803d1769be6fe0b09a5fd6376921545df282b938517213",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "vortexservers_co_uk",
"com.docker.compose.project.config_files": "/data/compose/32/v9/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/32/v9",
"com.docker.compose.replace": "web-1",
"com.docker.compose.service": "web",
"com.docker.compose.version": "",
"org.opencontainers.image.created": "2026-09-14T22:35:34.274Z",
"org.opencontainers.image.description": "Website for personal game server host",
"org.opencontainers.image.licenses": "",
"org.opencontainers.image.revision": "595cec28799ce348c6a223b64a109609a13faade",
"org.opencontainers.image.source": "https://github.com/tekkifox/vortexservers_co_uk",
"org.opencontainers.image.title": "vortexservers_co_uk",
"org.opencontainers.image.url": "https://github.com/tekkifox/vortexservers_co_uk",
"org.opencontainers.image.version": "latest"
},
"name": "vortexservers_co_uk-web-1",
"ports": [
{
"ip": "",
"privatePort": 3000,
"publicPort": 0,
"type": "tcp"
}
],
"status": "Up 3 days"
},
{
"image": "ghcr.io/pelican/wings:latest",
"kind": "container",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "b4ff0850444ab7f2e1e59730691bc674c712ea13b81e7d872ca425e288f53ce2",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:4721121ed1ffcbd395f8981d9aad758c073b52d95631a3a0ffd2c024f6c54c72",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "pelican-node",
"com.docker.compose.project.config_files": "/data/compose/14/v13/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/14/v13",
"com.docker.compose.replace": "pelican-node",
"com.docker.compose.service": "wings",
"com.docker.compose.version": "",
"org.opencontainers.image.created": "2026-08-16T21:33:10.250Z",
"org.opencontainers.image.description": "",
"org.opencontainers.image.licenses": "MIT",
"org.opencontainers.image.revision": "5bd4d7ec04283c3b05553f6143c92dae6e1dd9b0",
"org.opencontainers.image.source": "https://github.com/pelican/wings",
"org.opencontainers.image.title": "wings",
"org.opencontainers.image.url": "https://github.com/pelican/wings",
"org.opencontainers.image.version": "v1.0.0-beta29"
},
"name": "pelican-node",
"ports": [
{
"ip": "0.0.0.0",
"privatePort": 2022,
"publicPort": 2022,
"type": "tcp"
},
{
"ip": "::",
"privatePort": 2022,
"publicPort": 2022,
"type": "tcp"
},
{
"ip": "",
"privatePort": 8080,
"publicPort": 0,
"type": "tcp"
}
],
"status": "Up 3 days"
},
{
"image": "ghcr.io/pelican/panel:latest",
"kind": "container",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "3cf2bc259ba6b285c66d1eba601094164705d88848787c5b6d1c18b0ea5cdfc8",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "mariadb:service_started:false",
"com.docker.compose.image": "sha256:2b6b4abc362cce26d07ec6effa5832c01da229d8412caaf4d515897409a29ad1",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "pelican-panel",
"com.docker.compose.project.config_files": "/data/compose/11/v15/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/11/v15",
"com.docker.compose.replace": "pelican-panel",
"com.docker.compose.service": "panel",
"com.docker.compose.version": "",
"org.opencontainers.image.created": "2026-08-17T00:05:54.330Z",
"org.opencontainers.image.description": "",
"org.opencontainers.image.licenses": "AGPL-3.0",
"org.opencontainers.image.revision": "e84a4afd466e32f2b376774365185fe0342b73e6",
"org.opencontainers.image.source": "https://github.com/pelican/panel",
"org.opencontainers.image.title": "panel",
"org.opencontainers.image.url": "https://github.com/pelican/panel",
"org.opencontainers.image.version": "main"
},
"name": "pelican-panel",
"ports": [
{
"ip": "",
"privatePort": 80,
"publicPort": 0,
"type": "tcp"
},
{
"ip": "",
"privatePort": 9000,
"publicPort": 0,
"type": "tcp"
},
{
"ip": "",
"privatePort": 443,
"publicPort": 0,
"type": "tcp"
}
],
"status": "Up 3 days (healthy)"
},
{
"image": "jc21/nginx-proxy-manager:latest",
"kind": "container",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "d3d51c2e7e6dc5948b98a2650be33af1a24e87b287a5a85eed251ecc2b1dfc3c",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:f44e23f5e4d7d71dae4548e273b498c567311c76502a128f3bc782f528a58087",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "nginx-proxy-manager",
"com.docker.compose.project.config_files": "/data/compose/16/v9/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/16/v9",
"com.docker.compose.replace": "npm",
"com.docker.compose.service": "nginx-proxy-manager",
"com.docker.compose.version": "",
"maintainer": "Jamie Curnow <jc@jc21.com>",
"org.label-schema.cmd": "docker run --rm -ti jc21/nginx-proxy-manager:latest",
"org.label-schema.description": "Docker container for managing Nginx proxy hosts with a simple, powerful interface ",
"org.label-schema.license": "MIT",
"org.label-schema.name": "nginx-proxy-manager",
"org.label-schema.schema-version": "1.0",
"org.label-schema.url": "https://github.com/jc21/nginx-proxy-manager",
"org.label-schema.vcs-url": "https://github.com/jc21/nginx-proxy-manager.git"
},
"name": "npm",
"ports": [
{
"ip": "",
"privatePort": 81,
"publicPort": 0,
"type": "tcp"
},
{
"ip": "0.0.0.0",
"privatePort": 443,
"publicPort": 443,
"type": "tcp"
},
{
"ip": "::",
"privatePort": 443,
"publicPort": 443,
"type": "tcp"
},
{
"ip": "0.0.0.0",
"privatePort": 80,
"publicPort": 80,
"type": "tcp"
},
{
"ip": "::",
"privatePort": 80,
"publicPort": 80,
"type": "tcp"
}
],
"status": "Up 3 days"
},
{
"image": "lscr.io/linuxserver/bookstack:latest",
"kind": "container",
"labels": {
"build_version": "Linuxserver.io version:- v26.05.2-ls275 Build-date:- 2026-07-20T19:49:34+00:00",
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "e9c5f90d226068469d3f0d1d813a3793c763149e0ca1fdfa8b40a835c7d03b61",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "bookstack_db:service_started:false",
"com.docker.compose.image": "sha256:738442c4fb7c12072d5abe60d23083ac17191077e8e592f33f8aafa9ceaa2eac",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "bookstack",
"com.docker.compose.project.config_files": "/data/compose/25/v9/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/25/v9",
"com.docker.compose.replace": "bookstack",
"com.docker.compose.service": "bookstack",
"com.docker.compose.version": "",
"maintainer": "thespad",
"org.opencontainers.image.authors": "linuxserver.io",
"org.opencontainers.image.created": "2026-07-20T19:49:34+00:00",
"org.opencontainers.image.description": "[Bookstack](https://codeberg.org/bookstack/bookstack) is a free and open source Wiki designed for creating beautiful documentation. Featuring a simple, but powerful WYSIWYG editor it allows for teams to create detailed and useful documentation with ease. Powered by SQL and including a Markdown editor for those who prefer it, BookStack is geared towards making documentation more of a pleasure than a chore. For more information on BookStack visit their website and check it out: https://www.bookstackapp.com ",
"org.opencontainers.image.documentation": "https://docs.linuxserver.io/images/docker-bookstack",
"org.opencontainers.image.licenses": "GPL-3.0-only",
"org.opencontainers.image.ref.name": "6658332e6dfa0d82a0245d5042ebb2a2b7af9909",
"org.opencontainers.image.revision": "6658332e6dfa0d82a0245d5042ebb2a2b7af9909",
"org.opencontainers.image.source": "https://github.com/linuxserver/docker-bookstack",
"org.opencontainers.image.title": "Bookstack",
"org.opencontainers.image.url": "https://github.com/linuxserver/docker-bookstack/packages",
"org.opencontainers.image.vendor": "linuxserver.io",
"org.opencontainers.image.version": "v26.05.2-ls275"
},
"name": "bookstack",
"ports": [
{
"ip": "",
"privatePort": 443,
"publicPort": 0,
"type": "tcp"
},
{
"ip": "",
"privatePort": 80,
"publicPort": 0,
"type": "tcp"
}
],
"status": "Up 3 days"
},
{
"image": "ghcr.io/goauthentik/server:2026.5.0",
"kind": "container",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "bb4403bc632a56baf18ef0eb99d964c0d04dec87b483f4f9db7fe82d159c8b65",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:c509858a51771f2a1b94b57eb4443fcef95f4abda6b4a935e0e16918a05bd705",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "authentik",
"com.docker.compose.project.config_files": "/data/compose/31/v8/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/31/v8",
"com.docker.compose.service": "authentik",
"com.docker.compose.version": "",
"org.opencontainers.image.authors": "Authentik Security Inc.",
"org.opencontainers.image.description": "goauthentik.io Main server image, see https://goauthentik.io for more info.",
"org.opencontainers.image.documentation": "https://docs.goauthentik.io",
"org.opencontainers.image.licenses": "https://github.com/goauthentik/authentik/blob/main/LICENSE",
"org.opencontainers.image.revision": "",
"org.opencontainers.image.source": "https://github.com/goauthentik/authentik",
"org.opencontainers.image.title": "authentik server image",
"org.opencontainers.image.url": "https://goauthentik.io",
"org.opencontainers.image.vendor": "Authentik Security Inc.",
"org.opencontainers.image.version": "refs/tags/version/2026.5.0"
},
"name": "authentik-authentik-1",
"status": "Up 3 days (healthy)"
},
{
"image": "docker.io/library/postgres:16-alpine",
"kind": "container",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "65573874153573b81da9c879eaef43d307acaafda0c86af1c76ce8c7b11b1408",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:de3a4eab8fdfa507ea92aac488b916b08089e515db49b055fe71dfa271ba3a28",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "authentik",
"com.docker.compose.project.config_files": "/data/compose/31/v8/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/31/v8",
"com.docker.compose.service": "postgresql",
"com.docker.compose.version": ""
},
"name": "authentik-postgres-1",
"ports": [
{
"ip": "",
"privatePort": 5432,
"publicPort": 0,
"type": "tcp"
}
],
"status": "Up 3 days (healthy)"
},
{
"image": "ghcr.io/goauthentik/server:2026.5.0",
"kind": "container",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "7413f1cca0c011e0b5aa475374955df8fa2cdd264ec69f6db337c5a3aa6682cf",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:c509858a51771f2a1b94b57eb4443fcef95f4abda6b4a935e0e16918a05bd705",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "authentik",
"com.docker.compose.project.config_files": "/data/compose/31/v8/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/31/v8",
"com.docker.compose.service": "worker",
"com.docker.compose.version": "",
"org.opencontainers.image.authors": "Authentik Security Inc.",
"org.opencontainers.image.description": "goauthentik.io Main server image, see https://goauthentik.io for more info.",
"org.opencontainers.image.documentation": "https://docs.goauthentik.io",
"org.opencontainers.image.licenses": "https://github.com/goauthentik/authentik/blob/main/LICENSE",
"org.opencontainers.image.revision": "",
"org.opencontainers.image.source": "https://github.com/goauthentik/authentik",
"org.opencontainers.image.title": "authentik server image",
"org.opencontainers.image.url": "https://goauthentik.io",
"org.opencontainers.image.vendor": "Authentik Security Inc.",
"org.opencontainers.image.version": "refs/tags/version/2026.5.0"
},
"name": "authentik-worker-1",
"status": "Up 3 days (healthy)"
},
{
"image": "docker.io/library/redis:alpine",
"kind": "container",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "3d7a108c676420ec98964045e16f649ae652e01d80e2a92a5d644539654409db",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:cc48e0fe25c0095fb69b711b6c110b3801e7b30189e14358a5f16d4a747c9ec0",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "authentik",
"com.docker.compose.project.config_files": "/data/compose/31/v8/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/31/v8",
"com.docker.compose.service": "redis",
"com.docker.compose.version": ""
},
"name": "authentik-redis-1",
"ports": [
{
"ip": "",
"privatePort": 6379,
"publicPort": 0,
"type": "tcp"
}
],
"status": "Up 3 days (healthy)"
},
{
"image": "portainer/portainer-ee:sts",
"kind": "container",
"labels": {
"com.docker.compose.config-hash": "d558aa9215007428dad6a02ebad8b8e9f5bbc5ad9ddb379abde8f1c1536a8300",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:dd0853ef7a7d06dd4aa014f78852685fb59bed7bbd704f487796de8f5b8a07ed",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "portainer",
"com.docker.compose.project.config_files": "/mnt/portainer/compose.yaml",
"com.docker.compose.project.working_dir": "/mnt/portainer",
"com.docker.compose.replace": "portainer",
"com.docker.compose.service": "portainer",
"com.docker.compose.version": "2.40.3",
"git_commit": "0f3812e",
"io.portainer.server": "true",
"org.opencontainers.image.created": "2026-08-27T04:33:28Z",
"org.opencontainers.image.description": "Portainer Business Edition server.",
"org.opencontainers.image.documentation": "https://docs.portainer.io",
"org.opencontainers.image.revision": "0f3812e",
"org.opencontainers.image.title": "Portainer EE",
"org.opencontainers.image.url": "https://www.portainer.io",
"org.opencontainers.image.vendor": "Portainer.io"
},
"name": "portainer",
"ports": [
{
"ip": "",
"privatePort": 9000,
"publicPort": 0,
"type": "tcp"
},
{
"ip": "0.0.0.0",
"privatePort": 9443,
"publicPort": 9443,
"type": "tcp"
},
{
"ip": "::",
"privatePort": 9443,
"publicPort": 9443,
"type": "tcp"
},
{
"ip": "",
"privatePort": 8000,
"publicPort": 0,
"type": "tcp"
}
],
"status": "Up 3 days"
},
{
"image": "lscr.io/linuxserver/mariadb:latest",
"kind": "container",
"labels": {
"build_version": "Linuxserver.io version:- 11.8.8-r0-ls225 Build-date:- 2026-07-14T19:31:45+00:00",
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "a44d288df38da8d329dd8bc4eef849c8731abd78f63b1a99f5e7bccb3d110c04",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:0453ec8a2e1131cc3420ea9b6261d66916b175876ff682c988055c7bbc904f59",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "bookstack",
"com.docker.compose.project.config_files": "/data/compose/25/v8/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/25/v8",
"com.docker.compose.service": "bookstack_db",
"com.docker.compose.version": "",
"maintainer": "thelamer,nemchik",
"org.opencontainers.image.authors": "linuxserver.io",
"org.opencontainers.image.created": "2026-07-14T19:31:45+00:00",
"org.opencontainers.image.description": "[Mariadb](https://mariadb.org/) is one of the most popular database servers. Made by the original developers of MySQL.",
"org.opencontainers.image.documentation": "https://docs.linuxserver.io/images/docker-mariadb",
"org.opencontainers.image.licenses": "GPL-3.0-only",
"org.opencontainers.image.ref.name": "0c29ee565913170d71d00e888cafe3c330ea7c1a",
"org.opencontainers.image.revision": "0c29ee565913170d71d00e888cafe3c330ea7c1a",
"org.opencontainers.image.source": "https://github.com/linuxserver/docker-mariadb",
"org.opencontainers.image.title": "Mariadb",
"org.opencontainers.image.url": "https://github.com/linuxserver/docker-mariadb/packages",
"org.opencontainers.image.vendor": "linuxserver.io",
"org.opencontainers.image.version": "11.8.8-r0-ls225"
},
"name": "bookstack_db",
"ports": [
{
"ip": "",
"privatePort": 3306,
"publicPort": 0,
"type": "tcp"
}
],
"status": "Up 4 days"
},
{
"image": "portainer/agent:2.45.0",
"kind": "container",
"labels": {
"com.docker.compose.config-hash": "ee04bda4a16ebf7a23a983ba71ccef1cdb04ee76e49153772d4948e6de14b9fb",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:301c1d744ec8f4268056ba749c51af9dbdddbdc9d5cce05b4cb8a9163a9e2c20",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "portainer",
"com.docker.compose.project.config_files": "/mnt/portainer/compose.yaml",
"com.docker.compose.project.working_dir": "/mnt/portainer",
"com.docker.compose.replace": "portainer_edge_agent",
"com.docker.compose.service": "portainer_edge_agent",
"com.docker.compose.version": "2.40.3",
"git_commit": "0f3812e",
"io.portainer.agent": "true",
"org.opencontainers.image.created": "2026-08-27T04:30:54Z",
"org.opencontainers.image.description": "Portainer agent for managing environments.",
"org.opencontainers.image.documentation": "https://docs.portainer.io",
"org.opencontainers.image.revision": "0f3812e",
"org.opencontainers.image.title": "Portainer Agent",
"org.opencontainers.image.url": "https://www.portainer.io",
"org.opencontainers.image.vendor": "Portainer.io"
},
"name": "portainer_edge_agent",
"status": "Up 4 days"
},
{
"image": "docker.io/library/mariadb:10.6.7",
"kind": "container",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "937dcc0366bed9ee4b4b7dabd363ef3f7acd0d87159578542754194099f6fbba",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:3a25dc0f17778b385ee12f40b5dadd398ec4fb710ccde51e7e4af2c9c5555d3f",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "pelican-panel",
"com.docker.compose.project.config_files": "/data/compose/11/v13/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/11/v13",
"com.docker.compose.replace": "pelican-database",
"com.docker.compose.service": "mariadb",
"com.docker.compose.version": ""
},
"name": "pelican-database",
"ports": [
{
"ip": "",
"privatePort": 3306,
"publicPort": 0,
"type": "tcp"
}
],
"status": "Up 4 days"
},
{
"image": "garethgeorge/backrest:latest",
"kind": "container",
"labels": {
"com.docker.compose.config-hash": "7009ea041e9b489751be5e82914666b742a1f071cadc27bdf75223ef8115fef2",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:738946892ff31fe3367169119ca9f941d361bdfd0af85fb45754df33db4a0ec7",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "backrest",
"com.docker.compose.project.config_files": "/data/compose/36/v5/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/36",
"com.docker.compose.replace": "backrest",
"com.docker.compose.service": "backrest",
"com.docker.compose.version": "",
"org.opencontainers.image.source": "https://github.com/garethgeorge/backrest"
},
"name": "backrest",
"status": "Up 4 days"
},
{
"image": "weejewel/wg-easy",
"kind": "container",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "467115ce689b624af4bde0a74948b462d8ff8bbd8b2a115537e452d1d8f8fc93",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:c90b263d8a383ac55905e4edbe1513ba87b1a479bcaa8bb471412137b9541751",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "wireguard",
"com.docker.compose.project.config_files": "/data/compose/17/v2/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/17/v2",
"com.docker.compose.replace": "wg-easy",
"com.docker.compose.service": "wg-easy",
"com.docker.compose.version": ""
},
"name": "wg-easy",
"ports": [
{
"ip": "0.0.0.0",
"privatePort": 51820,
"publicPort": 51820,
"type": "udp"
},
{
"ip": "::",
"privatePort": 51820,
"publicPort": 51820,
"type": "udp"
},
{
"ip": "0.0.0.0",
"privatePort": 51821,
"publicPort": 51821,
"type": "tcp"
},
{
"ip": "::",
"privatePort": 51821,
"publicPort": 51821,
"type": "tcp"
}
],
"status": "Up 4 days"
},
{
"image": "ghcr.io/tekkifox/server-maintenance-notification-agent:latest",
"kind": "container",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "a6ad3e82b0bf42f0d1a2e6dbd55324bf3990961374fd51013087d9b193022801",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "docker-socket-proxy:service_started:false",
"com.docker.compose.image": "sha256:3746fbb148abcd2faa9d57f90ab6b82fb1fbb8c273dd5dfd9c1e980dc2166e4f",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "server-maintenance-notification-agent",
"com.docker.compose.project.config_files": "/data/compose/33/v10/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/33/v10",
"com.docker.compose.replace": "notification-agent-1",
"com.docker.compose.service": "notification-agent",
"com.docker.compose.version": "",
"org.opencontainers.image.created": "2026-07-15T16:32:54.791Z",
"org.opencontainers.image.description": "",
"org.opencontainers.image.licenses": "",
"org.opencontainers.image.revision": "b33d28e6bf7a335a66545b5f3e0c842f7e572f28",
"org.opencontainers.image.source": "https://github.com/tekkifox/server-maintenance-notification-agent",
"org.opencontainers.image.title": "server-maintenance-notification-agent",
"org.opencontainers.image.url": "https://github.com/tekkifox/server-maintenance-notification-agent",
"org.opencontainers.image.version": "latest"
},
"name": "server-maintenance-notification-agent-notification-agent-1",
"ports": [
{
"ip": "127.0.0.1",
"privatePort": 8080,
"publicPort": 8080,
"type": "tcp"
}
],
"status": "Up 4 days"
},
{
"image": "linuxserver/socket-proxy:latest",
"kind": "container",
"labels": {
"build_version": "Linuxserver.io version:- 3.4.3-r0-ls91 Build-date:- 2026-08-05T10:05:07+00:00",
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "44b21425768f8ce7060bc5ac5993a2fa8a1d9eb51d4e11cbaf82a416c3b05f4f",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:f98926ad095d5facf628801ca102c1f59c378b8d97c850148f025452444b32de",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "server-maintenance-notification-agent",
"com.docker.compose.project.config_files": "/data/compose/33/v10/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/33/v10",
"com.docker.compose.replace": "docker-socket-proxy-1",
"com.docker.compose.service": "docker-socket-proxy",
"com.docker.compose.version": "",
"maintainer": "thespad",
"org.opencontainers.image.authors": "linuxserver.io",
"org.opencontainers.image.created": "2026-08-05T10:05:07+00:00",
"org.opencontainers.image.description": "The Socket Proxy is a security-enhanced proxy which allows you to apply access rules to the Docker socket, limiting the attack surface for containers such as watchtower or Traefik that need to use it.",
"org.opencontainers.image.documentation": "https://docs.linuxserver.io/images/docker-socket-proxy",
"org.opencontainers.image.licenses": "GPL-3.0-only",
"org.opencontainers.image.ref.name": "0a0023ac0e1a2da66e2dfcd476a21eeeb56e6d2c",
"org.opencontainers.image.revision": "0a0023ac0e1a2da66e2dfcd476a21eeeb56e6d2c",
"org.opencontainers.image.source": "https://github.com/linuxserver/docker-socket-proxy",
"org.opencontainers.image.title": "Socket-proxy",
"org.opencontainers.image.url": "https://github.com/linuxserver/docker-socket-proxy/packages",
"org.opencontainers.image.vendor": "linuxserver.io",
"org.opencontainers.image.version": "3.4.3-r0-ls91"
},
"name": "server-maintenance-notification-agent-docker-socket-proxy-1",
"status": "Up 4 days"
},
{
"image": "specker/discordplayercountbot",
"kind": "container",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "08e41f776749c07e2373bb09003cccc927beff0dafaf77c2da9ea8d2cf732fe3",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:d792adc9de370ac388c4c6847e9bd0cf7dc96a56edb4dc24a6e2863dfaff107d",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "project-zomboid-player-count",
"com.docker.compose.project.config_files": "/data/compose/15/v3/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/15/v3",
"com.docker.compose.replace": "discord-bot-1",
"com.docker.compose.service": "discord-bot",
"com.docker.compose.version": ""
},
"name": "project-zomboid-player-count-discord-bot-1",
"status": "Up 4 days"
},
{
"image": "discordgsm/discord-game-server-monitor:latest",
"kind": "container",
"labels": {
"com.centurylinklabs.watchtower.enable": "true",
"com.docker.compose.config-hash": "1240a32a82e12042b29ea515a01636240d793bcebfde6422bce3952ae8cd45c0",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:0e4f2d933d0fab64de1460a63f9c0f9c51bf855e1b9377945136cd7b8f48e552",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "discordgsm",
"com.docker.compose.project.config_files": "/data/compose/2/v3/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/2/v3",
"com.docker.compose.replace": "discord-gsm",
"com.docker.compose.service": "discord-gsm",
"com.docker.compose.version": "",
"org.opencontainers.image.created": "2026-01-09T06:19:48.797Z",
"org.opencontainers.image.description": "๐บ A discord bot that monitors your game server and tracks the live data of your game servers. Supports over 260 game servers.",
"org.opencontainers.image.licenses": "MIT",
"org.opencontainers.image.revision": "17d2e124a3d7a4b4cc4b64bada325f363fb162da",
"org.opencontainers.image.source": "https://github.com/DiscordGSM/GameServerMonitor",
"org.opencontainers.image.title": "GameServerMonitor",
"org.opencontainers.image.url": "https://github.com/DiscordGSM/GameServerMonitor",
"org.opencontainers.image.version": "2.20.1"
},
"name": "discord-gsm",
"status": "Up 4 days"
},
{
"image": "node",
"kind": "container",
"labels": {
"com.docker.compose.config-hash": "ef1a99f4f6e95258207527d28bcb2341517535628e054321eedb0bc517bf3301",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "",
"com.docker.compose.image": "sha256:abc0e1c4fa20e0a630d1229cb20b48368e67ef79ce959f825a438376bcdff1dd",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "dishorde-7dtd-discord-connector",
"com.docker.compose.project.config_files": "/data/compose/23/v2/docker-compose.yml",
"com.docker.compose.project.working_dir": "/data/compose/23/v2",
"com.docker.compose.replace": "dishorde",
"com.docker.compose.service": "dishorde",
"com.docker.compose.version": ""
},
"name": "dishorde",
"status": "Up 4 days"
},
{
"kind": "daemon",
"labels": {
"endpoint": "http://socket-proxy:2375"
},
"name": "docker-daemon",
"status": "45 containers, 34 images"
}
],
"status": "healthy",
"telemetry": {
"hosts": [
{
"cpu": 19.1,
"cpuCount": 20,
"diskPercent": 70.3,
"diskTotalBytes": 970257801216,
"diskUsedBytes": 681632526336,
"kernel": "Linux version 6.17.0-41-generic (buildd@lcy02-amd64-047) (x86_64-linux-gnu-gcc (Ubuntu 15.2.0-4ubuntu4) 15.2.0, GNU ld (GNU Binutils for Ubuntu) 2.45) #41-Ubuntu SMP PREEMPT_DYNAMIC Sat Jun 20 18:01:40 UTC 2026",
"loadAverage": [
3.81,
3.69,
3.7
],
"memoryPercent": 79.6,
"memoryTotalBytes": 67217682432,
"memoryUsedBytes": 53486579712,
"name": "fedafdbd0e73",
"networkRxBytes": 3965101,
"networkTxBytes": 2743927,
"os": "Ubuntu 25.10",
"processes": 604,
"swapFreeBytes": 28226519040,
"swapTotalBytes": 34324082688
}
],
"metrics": {
"cpuAvg": 19.1,
"diskPercent": 70.3,
"diskTotalBytes": 970257801216,
"diskUsedBytes": 681632526336,
"hostCount": 1,
"loadAvg": 3.81,
"memoryPercent": 79.6,
"memoryTotalBytes": 67217682432,
"memoryUsedBytes": 53486579712,
"networkRxMB": 3.7814149856567383,
"networkTxMB": 2.6168127059936523,
"processCount": 604,
"swapFreeBytes": 28226519040,
"swapPercent": 17.8,
"swapTotalBytes": 34324082688,
"topOS": "Ubuntu 25.10"
}
},
"title": "Docker + Linux host overview",
"updatedAt": "2026-09-18T09:12:41Z"
}Recent commits
Recent changes
$ git log --oneline -n 5 595cec2 Update readme and docker compose 253f379 Update .env.example 7e99dd1 Update README.md bd6459e Merge pull request #4 from tekkifox/cms/pages/privacy 3bf3771 Update Pages โprivacyโ
Contact
Open to platform, DevOps, and development work.
I am available for contract and full-time work, and I enjoy collaborating with teams to improve delivery and reliability.