Skip to content

sircurse/otbr-virtual-appliance

Repository files navigation

OTBR - Virtual Appliance

Discord Channel GitHub issues GitHub pull request Contributors GitHub Pulls

Project - OpenTibiaBR

OpenTibiaBR - Canary is a free and open-source MMORPG server emulator written in C++.

In the project's repo Canary, you can see the repository history in the releases.

The OpenTibiaBR - Global was adapted to work with the source of the Canary, so it is the default datapack to be used with Canary distro.

The intention of this project is to serve as an automated image, including all packages, files and basic configurations that allows the deployment of the Canary server and to first run it smoothly.

To connect to the server and to take a stable experience, you can use mehah's otclient or tibia client and if you want to edit something, check our customized tools.

If you want edit the map, use the own remere's map editor.

You are subject to our code of conduct, read at this link.

Getting Started

  • WARNING: PRE-REQUISITE IS TO HAVE BASIC KNOWLEDGE OF LINUX AND A DOCKER SERVER INSTALLED.
  • The container is based on Ubuntu 22.04, all the packages and necessary files was previoulsy configured.
  • The deployment will require basic settings as IP addreses that will be set to your server if completele exposed.
  • If running the server behind a reverse Proyx, then the IP address of your Proxy server will be used.
  • The TCP port that will be configured to the HTTP(S) server needs to be previously opened.
  • If running the the server with SSL enabled, it is required to have a copy of the key and certificates in order to setup the AAC server.
  • The TCP ports 7171 and 7172 are mandatory to run the game protocol and needs to be previously opened.

Deployment of Docker Server in Ubuntu 22.04:

LINK TO VIDEO TUTORIAL
IMAGE ALT TEXT

sudo apt-get update
sudo apt-get -y install ca-certificates curl gnupg lsb-release
curl -sSL https://get.docker.com/ | CHANNEL=stable bash
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io

Deployment of Portainer:

LINK TO VIDEO TUTORIAL
IMAGE ALT TEXT

sudo docker run -d -p 8000:8000 -p 9443:9443 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest

PS: Additional steps can be executed in order to deploy a Proxy server in Docker. If so, folow the next steps. If not, jump to Deployment of OTBR - Virtual Appliance

Deployment of NGINX Proxy Manager:

LINK TO VIDEO TUTORIAL
IMAGE ALT TEXT

Deployment of Portainer - Additional Steps:

This step is only required if you want to expose your otserv under SSL encryption.
LINK TO VIDEO TUTORIAL
IMAGE ALT TEXT

sudo docker stop portainer
sudo docker rm portainer
sudo docker run -d -p 8000:8000 -p 9443:9443 --network nginxproxymanager_default --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest

Note that some Ubuntu distributed over VPSs or if you are installing a Ubuntu fresh from a iso file, you may need to configure your user to have access external from SFTP clients like WinSCP, to do so, edit your /etc/sudoers, executing the following command:

echo "$USER ALL=(ALL) NOPASSWD:ALL" | sudo tee -a /etc/sudoers

You still need to set your SFTP client to execute with sudo previleges, like the bellow configuration on advanced settings of WinSCP: image
After that, you should be able to open SFTP clients and edit files remotely.

Deployment of OTBR - Virtual Appliance:

LINK TO VIDEO TUTORIAL
IMAGE ALT TEXT

Edit your MyAAC IP address to proceed with the installation:

sed -i -e '$aMYIPADDRESS' /var/www/html/install/ip.txt

After installed, for safety remove your install folder with the following command:

rm -r /var/www/html/install

Ueseful Commands - Virtual Appliance:

The most used process to maintain your server updated can be executed by commands from anywhere:
$ db-backup Force auto backup of your mysql database, the file can be found on host machine at path /srv/otbr/dbbkp.
$ repo-update Force update of the repositories, it includes the distro/canary repository, datapack/global repository and aac/myaac repository.
$ recompile Force server to recompile, this process require some processing consumption, be caution while running it, once recompiled simple restart the server to apply the new binary or wait for the next server save.
$ canary-restart Force Canary server to restart.

Issues

We use the issue tracker on GitHub. Keep in mind that everyone who is watching the repository gets notified by e-mail when there is an activity, so be thoughtful and avoid writing comments that aren't meant for an issue (e.g. "+1"). If you'd like for an issue to be fixed faster, you should either fix it yourself and submit a pull request, or place a bounty on the issue.

Pull requests

Before creating a pull request please keep in mind:

  • Do not send Pull Request changing the map, as we can't review the changes it's better to use our Discord to talk about or send the map changes to the responsible for updating it.
  • Focus on fixing only one thing, mixing too much things on the same Pull Request make it harder to review, harder to test and if we need to revert the change it will remove other things together.
  • Follow the project indentation, if your editor support you can use the editorconfig to automatic configure the indentation.
  • There are people that doesn't play the game on the official server, so explain your changes to help understand what are you changing and why.
  • Avoid opening a Pull Request to just update one line of an xml file.

Credits to the creators of the services included or mentioned in this image

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages