pterodactyl / panel

Pterodactyl® is a free, open-source game server management panel built with PHP, React, and Go. Designed with security in mind, Pterodactyl runs all game servers in isolated Docker containers while exposing a beautiful and intuitive UI to end users.
https://pterodactyl.io
Other
6.72k stars 1.71k forks source link

Teamspeak 3 mariadb missing lib #630

Closed melihsd closed 7 years ago

melihsd commented 7 years ago

You're not able to start your server while configured with libts3db_mariadb.so for external database usage.

Error Code: unable to load database plugin library "libts3db_mariadb.so", halting!

Problem: a dependency library is missing. -> libmariadb.so.2 ts3server_minimal_runscript.sh and the $LD_LIBRARY_PATH dont point to the needed lib.

Soloution: The teamspeak zip file ships with the needed lib located in the subfolder redist/

temporary fixes----

(for single server/customer/user):

   1. Select your Server and open the file manager
   2. Edit the file *ts3server_minimal_runscript.sh*
   3. Go to the line 'export LD_LIBRA...'
   4. Change the line to-> export LD_LIBRARY_PATH=".:redist:$LD_LIBRARY_PATH"
   5. Thats all! youre now able to use your database!

(for admins/reseller/hoster):

  1. In the admin panel press on 'services' -> 'voice server' and after that at the bottom
  2. press on 'Teamspeak3 Server' then select the Tab 'Scripts'
  3. Just replace the whole code with the here given code (and modify to your needs..):
#!/bin/ash
# TS3 Installation Script
#
# Server Files: /mnt/server
apk update
apk add tar curl

cd /tmp

curl -sSLO http://dl.4players.de/ts/releases/${TS_VERSION}/teamspeak3-server_linux_amd64-${TS_VERSION}.tar.bz2

tar -xjvf teamspeak3-server_linux_amd64-${TS_VERSION}.tar.bz2
cp -r teamspeak3-server_linux_amd64/* /mnt/server

echo '
#######################################################################################
# sql settings. To use your provided database just comment sqlite and uncomment mariadb.
# Dont forget to enter username, password and database. Dont change the IP.

####sqlite####
dbplugin=ts3db_sqlite3
dbpluginparameter=
dbsqlpath=sql/
dbsqlcreatepath=create_sqlite/

####mariadb###
#dbplugin=ts3db_mariadb
#dbpluginparameter=ts3db_mariadb.ini
#dbsqlpath=sql/
#dbsqlcreatepath=create_mariadb/

#######################################################################################

machine_id=

voice_ip=0.0.0.0
filetransfer_ip=0.0.0.0
query_ip=0.0.0.0

default_voice_port=${SERVER_PORT}
filetransfer_port=30033
query_port=10011

query_skipbruteforcecheck=0
query_ip_whitelist=query_ip_whitelist.txt
query_ip_blacklist=query_ip_blacklist.txt

licensepath=

dbconnections=10
dbclientkeepdays=30

logpath=logs
logquerycommands=0
logappend=0' > /mnt/server/ts3server.ini

echo '[config]
host=172.18.0.1
port=3306
username=username
password=password
database=database' > /mnt/server/ts3db_mariadb.ini

echo '#!/bin/sh

export LD_LIBRARY_PATH=".:redist:$LD_LIBRARY_PATH"

D1=$(readlink -f "$0")
D2=$(dirname "${D1}")
cd "${D2}"
./ts3server $@' > /mnt/server/ts3server_minimal_runscript.sh

with regards! So we noticed that Pterodactyl has some Bugs.. why not donate the creator some money so he can spend more time on the project?

JuanRomeroDominguez commented 6 years ago

Gracias por compartir la solución! :+1: