Najprostszy sposób na Sinusbot na VPS KVM w 3 krokach

do-zaktualizowania
Tagi: #<Tag:0x00007f149f569b80>

#1

O poradniku

Najszybszy i najprostszy sposób na Sinusbota który działa na VPS KVM Game Pro 2GB RAM i większych
https://lvlup.pro/oferta/vps-kvm-game-pro/
takie VPSy mają standardowo zainstalowane Ubuntu 14.04 LTS 64bit które współpracuje z Dockerem.

Pozwala nam to łatwo i niezawodnie postawić bota muzycznego do TeamSpeak 3 oraz Discord.

Przed wykonaniem komend należy zalogować się na konto root!
Aby zalogować się na konto root używamy komendy sudo su.

1. Instalacja Dockera

Uruchamiamy automatyczną instalację

wget -qO- https://get.docker.com/ | sh

2. Pierwszy start

Tworzymy folder /opt/docker/sinusbot/ w którym będą nasze pliki sinusbota.
Następnie uruchamiamy go tylko na chwilę aby zapisać wygenerowane hasło do konta admina.
Pierwsze uruchomienie może potrwać kilka minut, jest wtedy ściągany obraz kontenera.

mkdir -p /opt/docker/sinusbot/data /opt/docker/sinusbot/scripts
chown -R 3000:3000 /opt/docker/sinusbot
docker run --name sinusbot -v /opt/docker/sinusbot/data:/sinusbot/data -v /opt/docker/sinusbot/scripts:/sinusbot/scripts -p 8087:8087 galexrt/sinusbot:latest

Gdy już bot zaczyna się uruchamiać zobaczymy coś podobnego jak poniżej, jest tam podane hasło konta admina które sobie zapisujemy.

Unable to find image 'galexrt/sinusbot:latest' locally
latest: Pulling from galexrt/sinusbot
3a635c0fcefb: Pull complete 
bf3f7e9b4869: Pull complete 
ad323864e1f8: Pull complete 
b4d3fc870200: Pull complete 
4e69d6ff0e56: Pull complete 
64e4c23d41f5: Pull complete 
56e0c016beba: Pull complete 
82f4e8d2fde0: Pull complete 
7b230823ae17: Pull complete 
d31c4b7723e7: Pull complete 
708a52a754d4: Pull complete 
Digest: sha256:49c3160a08db2d40489a370c021caf8d594ba484377888de3d81f7b7f39cbed0
Status: Downloaded newer image for galexrt/sinusbot:latest
-> Updating sinusbot user and group id if necessary ...
-> Correcting file and mount point permissions ...
=> Corrected mount point permissions.
-> Checking if scripts directory is empty
-> Copying original sinusbot scripts to volume ...
=> Sinusbot scripts copied.
-> Checking for old data location ...
=> You are good to go! You are already using the new data directory, located at "/sinusbot/data".
=> Starting SinusBot (https://sinusbot.com) by Michael Friese ...
 ___ ___ _  _ _   _ ___ ___  ___ _____  BETA
/ __|_ _| \| | | | / __| _ )/ _ \_   _|
\__ \| || .` | |_| \__ \ _ \ (_) || |  
|___/___|_|\_|\___/|___/___/\___/ |_|  

Version: 0.9.16-10f0fad
(C) 2013-2016 Michael Friese. All rights reserved.

2017/02/16 22:46:23 [GENERAL/SCRIPTS] INFO   Loading ScriptPlugin advertising.js
2017/02/16 22:46:23 [GENERAL/SCRIPTS] INFO   Loading ScriptPlugin aloneMode.js
2017/02/16 22:46:23 [GENERAL/SCRIPTS] INFO   Loading ScriptPlugin badchan.js
2017/02/16 22:46:23 [GENERAL/SCRIPTS] INFO   Loading ScriptPlugin bookmark.js
2017/02/16 22:46:23 [GENERAL/SCRIPTS] INFO   Loading ScriptPlugin covatar.js
2017/02/16 22:46:23 [GENERAL/SCRIPTS] INFO   Loading ScriptPlugin dev.js
2017/02/16 22:46:23 [GENERAL/SCRIPTS] INFO   Loading ScriptPlugin followme.js
2017/02/16 22:46:23 [GENERAL/SCRIPTS] INFO   Loading ScriptPlugin idle.js
2017/02/16 22:46:23 [GENERAL/SCRIPTS] INFO   Loading ScriptPlugin metadata.js
2017/02/16 22:46:23 [GENERAL/SCRIPTS] INFO   Loading ScriptPlugin norecording.js
2017/02/16 22:46:23 [GENERAL/SCRIPTS] INFO   Loading ScriptPlugin rememberChannel.js
2017/02/16 22:46:23 [GENERAL/SCRIPTS] INFO   Loading ScriptPlugin showcase.js
2017/02/16 22:46:23 [GENERAL/SCRIPTS] INFO   Loading ScriptPlugin sound.js
2017/02/16 22:46:23 [GENERAL/SCRIPTS] INFO   Loading ScriptPlugin welcometext.js
-------------------------------------------------------------------------------
Generating new bot instance with account 'admin' and password '1vGGelxh'
PLEASE MAKE SURE TO CHANGE THE PASSWORD DIRECTLY AFTER YOUR FIRST LOGIN!!!
-------------------------------------------------------------------------------

Chwilowo usuwamy nasz kontener ale bez obaw, dane zostają bezpieczne w folderze :slight_smile:

docker rm sinusbot

Gdy już zapisaliśmy hasło, wciskamy Ctrl + C aby wyłączyć bota.

3. Start i autorestart

Jako że mamy już dane do admina to uruchomimy bota muzycznego w ten sposób aby sam się restartował, czy to przy crashu czy przy restarcie VPS, bez potrzeby używania crona.

docker run --name sinusbot -v /opt/docker/sinusbot/data:/sinusbot/data -v /opt/docker/sinusbot/scripts:/sinusbot/scripts -p 8087:8087 --restart=always -d galexrt/sinusbot:latest

Po wykonaniu tej momendy wyświetli nam się długi ciąg znaków w tym stylu:

e7f0ff8ce4c20a795d8018457a33b54edb4469f7e87c2f566dbd6dac9c6cfd30

Oznacza to że nasz bot się właśnie włącza i możemy już wejść do jego panelu który znajduje się na porcie 8087 naszego VPS więc wchodzimy w przeglądarkę na adres http://ip-naszego-vps:8087 i logujemy się korzystając z loginu admin oraz hasła które wcześniej zapisaliśmy.

Przydatne komendy

Aktualizowanie Sinusbota

Co jakiś czas możemy chcieć zaktualizować bota do najnowszej wersji, wystarczą dwie komendy, jedna ściąga nowy obraz, druga restartuje aby użyć nowego obrazu

docker pull galexrt/sinusbot:latest
docker restart sinusbot

Zatrzymywanie

docker stop sinusbot

Start

docker start sinusbot

Sinus bot nie wchodzi na server
Dwie instancje panelu Sinsusbota i jedna licencja na VPS
#2

Jaka jest różnica w użytkowaniu / kontrolowaniu bota jeśli jest postawiony “normalnie” lub z dockerem?
Czy tą metodą można postawić kilka sinusbotów?


#3

Za pomocą Dockera możesz postawić więcej instancji Sinusbota, które będą działały odrębnie, na różnych portach. Ten sposób działa nie zadziała na OpenVZ, ze względu na wirtualizacje.


#4

Główna różnica tkwi w prostocie i zasadniczym braku różnic konfiguracji między systemem operacyjnym jakiego używasz dopóki wspiera on Dockera.

Można też łatwo przenosić instalację aplikacji pomiędzy VPSami przez zwykle przeniesienie folderu /opt/docker/sinusbot i powtórzenie pierwszego i trzeciego kroku z tej instrukcji.

Docker nie ruszy na OpenVZ lub wymagałoby to dużej kombinacji przynoszącej kiepską wydajność.


#5

Po odpaleniu 2 instancji komendą:
docker run --name sinusbot2 -v /opt/docker/sinusbot/data:/sinusbot/data -v /opt/docker/sinusbot/scripts:/sinusbot/scripts -p 8088:8087 --restart=always -d galexrt/sinusbot:latest

Sinusbot wypluwa:
Error
Invalid server address, wrong password, security level too high for our identity, client version too old or given default channel non-existant / passworded.

Pierwsza instancja działa prawidłowo.
Pomożecie???


#6

Naprawione wystarczyło w grupie serwera MusicBOT ustawić wartość 100 dla permisji

i_client_max_clones_uid


#7

Okej, stworzyłem zgodnie z tym poradnikiem, ale gdy próbuję dodać 3 instancję, to i tak dostaję powiadomienie, że wykorzystałem już limit. Czegoś nie rozumiem?


#8

Tak, bo musisz postawić jeszcze raz SinusBot’a na Dockerze, tylko uruchomionego na innym porcie. Oprogramowanie samo w sobie we wersji darmowej posiada limit 2 instancji.


#9

Czyli panie _an0 mam taką komendę wrzucić?
docker run --name sinusbot2 -v /opt/docker/sinusbot/data:/sinusbot/data -v /opt/docker/sinusbot/scripts:/sinusbot/scripts -p 8088:8087 galexrt/sinusbot:latest
Wtedy działa na porcie 8088, lecz i tak bierze hasła, rzeczy itp z pierwszej instancji, która jest na porcie 8087. Czyli moim rozumowaniem, mam wpisać taką komendę:
docker run --name sinusbot2 -v /opt/docker/sinusbot2/data:/sinusbot/data -v /opt/docker/sinusbot2/scripts:/sinusbot/scripts -p 8088:8087 galexrt/sinusbot:latest

@EDIT: Okej, dałem sobie radę, kroki powtórzyłem z inną nazwą.


#10

Jak próbuje połączyć się na serwer mam taki błąd, o co może chodzić?

2017/09/18 20:16:12 5df94184 de8664fd INFO The bot could not connect. This might have several reasons: the server doesn’t exist at that address, the server password is wrong, the default channel doesn’t exist, the bot has been banned, the server is an illegal installation or the password is wrong , the security level of your identity is too low or the server does not allow the version of the client you are using. See our Wiki / Forums for more help.
2017/09/18 20:16:12 5df94184 de8664fd INFO New connection status 0; Error 0
2017/09/18 20:16:13 5df94184 de8664fd INFO TSClient quit.


#11

Wystarczy czytac logi :wink:


#12

Ip to 127.0.0.1 które jest dobre hasła nie ma a tym bardziej nie jest zbanowany


#13

To pewnie wersja clienta jest za stara, ew. cos przemajstrowane z poziomem security.


#14

Security jest na 8. Jak zmienić wersje klienta TS3?


#15

Aktualizujac sinusbota najprawdopodobniej. Ja bym podbijal na oficjalne forum i tam zadawal takie pytania, tutaj raczej jest kwestia oprogramowania, anizeli samej instalacji.


#16

Właśnie ja instalowałem go wraz z dockerem i tu pliki są inaczej ułożone niż w orginalnym bocie gdzie klient ts3 jest w /opt/ts3soundboard


#17

To jak napisalem - podbijaj na ich oficjalne forum, pewnie tam pomoga.


#18

Nawet jeśli jest z dockerem? :stuck_out_tongue:


#19

To raczej wina Sinusa anizeli Dockera


#20

A ty nie wiesz przypadkiem w którym folderze jest sam klient TS3 z którego sinus z tego tematu korzysta?