Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - UncleSam

Pages: [1]
1
JTS3ServerMod Projects and Scripts from other people / Docker
« on: October 17, 2023, 08:59:23 PM »
Hi,


I have no real experience in running jts3servermod using docker, but I found a ways for me which seems to work fine. Feel free to try it. Of course this is NOT official - so use at your own risk.


Regarding the license system I have no clue at the moment if this is working as expected or not. Basically it has the same ip address but could have different hardware specs every time you delete the container and respawn it again.

I am not using a special docker container which contains the hosting files. Instead I am using the official openjdk image and just mount the bot-files inside. The benefit is also that this is not exposing any hosted files.


Requirements:

  • knowledge about docker and docker compose
  • working bot
  • reachable database (in my case I also host the database inside docker)
  • installed "docker compose" (or the old "docker-compose")
How To:
  • Create a new folder
  • Inside create the "docker-compose.yaml" files (see below)
  • Stop your bot and copy your bot folder in the subfolder "botfiles"
  • Add the "entrypoint.sh" inside this folder
Also make sure to update the binding and telnet whitelist.


After performin this steps start the container using "docker compose" and check if it fails for something.


docker-compose.yaml
Code: [Select]
version: '3.5'
services:
        jts3servermod:
                container_name: jts3servermod
                image: openjdk:22
                volumes:
                        - ./botfiles:/botfiles
                restart: unless-stopped
                environment:
                        TZ: Europe/Berlin
                entrypoint: ["/botfiles/entrypoint.sh"]


entrypoint.sh
Code: [Select]
#!/bin/sh
cd /botfiles


# delete pid and lock file which could lead into the bot not starting
rm -f /botfiles/config/jts3servermod.pid
rm -f /botfiles/config/JTS3ServerMod_InstanceManager.cfg.lock


# run the bot
/usr/bin/java -Xms1G -Xmx2G -jar JTS3ServerMod.jar

2
Hi there,
if you want you can use my start/stop script for Systemd:
1. Create a new file:
Code: [Select]
/lib/systemd/system/jts3servermod.service2. Fill it like this sample:
Code: [Select]
[Unit]Description=JTS3ServermodAfter=network.target[Service]
PIDFile=/path/to/JTS3ServerMod_HostingEdition/jts3servermod.pid
WorkingDirectory=/path/to/JTS3ServerMod_HostingEdition/
ExecStart=/usr/bin/java -Xms1G -Xmx2G -jar JTS3ServerMod.jar
Type=simple
Restart=always
RestartSec=15
User=botusername
Group=botgroupname

[Install]
WantedBy=multi-user.target
Description (just of some entries):
  • Restart always: if bot was stopped for any reasons other then 'service jts3servermod stop' or 'systemctl stop jts3servermod' it starts this service again
  • RestartSec 15: if the above happens it waits 15 seconds between crash and start
  • User: linux username the bot should run under
  • Group: optional, if not used comment it using "#" or delete it
3. enable it to auto start
Code: [Select]
systemctl daemon-reload
systemctl enable jts3servermod.service
4. Have fun :-)
Code: [Select]
service jts3servermod start/stop/restartImage already added

3
Für alle die sowas benötigen:
Ich habe eine temporäre Lösung für mich geschaffen. Wer will kann es gerne verwenden (auf eigene Gefahr!).

Nachfolgend ist beschrieben, wie man in einer Ubuntu 14.04 Umgebung ein Startscript erstellt, welches den Bot unter einem definierten Benutzer ausführt. Außerdem ist damit auch der Start des Bots beim Systemstart möglich. Dabei benutzt das Script lediglich das Start/Stop Script von Stefan1200 (sprich es leitet alle Anfragen weiter).

Changelog:
Quote
pre 01.05.2016
  • Initial release
01.05.2016
  • Command "java" now gets executed under current user, so root is able to install java

Installationsanleitung:
Script (speichern in /etc/init.d/jts3servermod):
Code: (Bash) [Select]
#!/bin/sh
### BEGIN INIT INFO
# Provides:
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: JTS3ServerMod init.d script
# Description:      JTS3ServerMod by stefan1200.de
### END INIT INFO


dir="/home/tsbots/JTS3ServerMod_HostingEdition"
cmd="./jts3servermod_startscript.sh"
user="tsbots"


case "$1" in
        java)
                cd "$dir"
                $cmd java
        ;;
        start)
                cd "$dir"
                sudo -u "$user" $cmd start
        ;;
        stop)
                cd "$dir"
                sudo -u "$user" $cmd stop
        ;;
        restart)
                cd "$dir"
                sudo -u "$user" $cmd restart
        ;;
        status)
                cd "$dir"
                sudo -u "$user" $cmd status
        ;;
        *)
                cd "$dir"
                sudo -u "$user" $cmd
esac
exit 0


Anschließend das Script ausführbar machen:
Quote
# chmod u+x /etc/init.d/jts3servermod


Wer den Bot automatisch starten/stoppen lassen möchte muss nur noch folgendes eingeben (Informationen siehe Header des StartScriptes):
Quote
update-rc.d jts3servermod defaults


Verwendung:

Du kannst nun den Bot per root starten/stoppen/... im jeweiligen Benutzerkontext. Sofern du den Bot mit dem Benutzer selbst kontrollieren willst kannst du dies mit dem Start/Stop Script im Bot Verzeichnis selber.

Befehl (anstatt von "start" geht auch: stop, restart, status und java):
Quote
# service jts3servermod start

Oder alternativ:
Quote
# /etc/init.d/jts3servermod start

Edit by Stefan1200: BBCode fixes

4
Hallo,

du hast Interesse an dem Teamspeak Bot und willst ihn auch auf deinem Teamspeak Server zum Einsatz bringen? Leider hast du aber keinen eigenen Server wo du den Bot betreiben kannst? Oder du betreibst ihn von zu Hause aus?

Hier habe ich mir etwas überlegt was auch dir einen gehosteten Teamspeak Bot verschafft!

Da mein Server noch reichlich Kapazitäten hat werde ich Teamspeak Bots für umsonst verteilen. Ohne Einrichtungsgebühr, ohne monatliche Kosten, ohne ..... einfach umsonst  8)

Die Webpage dieses Services findet ihr unter: https://www.tsbots.de (vermutlich folgen noch ein paar kostenlose Services rund um TS3)

Was du bekommst
- Einen Bot für die Verbindung auf einen Teamspeakserver
- Freie Konfiguration deines eigenen Bots
- Geschützten SSL Zugang zum Webinterface

Voraussetzungen
- Ein Teamspeak 3 Server
- Einen Zugang mit Administratorenrechten für den Bot (einen sogenannten Server Query Admin)
- Am besten die Möglichkeit IP-Adressen zur Whitelist hinzuzufügen (ansonsten muss der langsame Modus des Bots ausgewählt werden)

Regeln die beachtet werden müssen
Dieser Service darf von euch ...
- ... nicht kommerziell genutzt oder weitervertrieben werden
- ... nicht für Verteilung von Illegalen Inhalten oder Dateien genutzt werden
- ... nicht gegen geltendes deutsches Recht verstoßen
- ... nicht als Spammer missbraucht werden
Im Prinzip will ich einfach nicht, dass jemand damit Mist baut.

Wie kriege ich so einen Bot?
Ich bin ein großer Fan dieses Bots. Daher möchte ich auch in Zukunft, dass dieser Bot weiter entwickelt wird. Deshalb bekommst du einen Bot wenn du:
- Spende an den Entwickler um dem Projekt zu helfen (https://www.stefan1200.de/forum/index.php?topic=190.0) und sage ihm, dass du einen Bot von mir möchtest.
- Anschließend wird Stefan mir das mitteilen und ich eure E-Mail Adresse freischalten. (Du erhältst von mir alle Infos um auf den Bot zugreifen zu können.)
- Alternativ: Wende dich über das Forum an mich. Wenn du hier als Spender gekennzeichnet bist kannst du bei mir einen Bot bekommen.

FAQ
Wie lange bekomme ich den Bot?
- Voraussichtlich länger als du einen Teamspeak Server hast  ;)
Was kann ich mit dem Bot machen?
- Du hast vollständigen Zugriff auf alle Funktionen des Bots für deinen Server. Einstellungen zur Verwaltung des Dienstes stehen dir natürlich nicht zur Verfügung, darum kümmer ich mich.
Kriege ich einen Bot ohne Spende?
- Knapp und kurz: Nein, ein bisschen müsst ihr das ganze Projekt schon unterstützen

Dieses Angebot gilt nur für Privatpersonen. Keine Vergabe an Firmen!

Euer UncleSam

Pages: [1]