- What are the pro's and con's of considering running a future OTS on Linux or Windows?
You are able to do way more configurations in an easy way on a Linux distribution.
There are minimal versions, which run more stable with less processes.
Linux is open source and uses mostly open course software.
You will find more solutions to your problems with Linux systems.
And so on...
- If Linux was on the table, what distribution is the best to consider? (Ubuntu, Debian, ...)
Debian. Stable and secure. Always has the most relevant updates, but not the ones which haven't been tested extensively and aren't 100% stable yet.
- Is there anything I should look out for when starting my project if I choose to go with Linux?
Not really. You will have to learn how to handle a terminal, bash and how to maintain a unix machine.
- Do most people compile the code from a windows machine and simply transfer the files over to the host?
Nope. You should compile the sources on the machine you are running it on, or a replica of it.
@Znote The thing about that installation is that I get no experience from the actual setup. Running a server demands experience and this only delivers a complete package. I do not expect my server to be released to the public in a near future so I might aswell take my time and go through the basics that comes with a clean install.
With that said I've done some research since I bumped this post and I've gotten a better understanding from what I get running Linux and that's what I'll be hosting my server with in the future.
With that being said, do you think I'm biting off more than I can chew?
Sorry if I sounded a bit negative in my post. I'm really grateful for all answers I get.
Thank you. That is what I've always been telling everyone. Just setting it up with a script, which has its' flaws, is not good enough. You need experience to be able to maintain your infrastructure. Which is why I recommend setting it up yourself.
Thats fine if you don't want to use the otshosting-provisioning script. Especially if you want to learn Linux.
But because that script, you should start off with Ubuntu 18.04.
Ubuntu Server 18.04.3 LTS
Get Ubuntu Server one of three ways; by using Multipass on your desktop, using MAAS to provision machines in your data centre or installing it directly on a server.
ubuntu.com
This is the most "standard" Linux distro for OT servers, that most members are familiar with. And should it happen that you do bite off more than you can chew, you can always just reset your box and go the ansible playbook way. (otshosting-provisioning script) and you'll be good to go.
I actually disagree. For starters, you shouldn't use Ubuntu for your server. I don't know why everyone here recommends it. It's a bullshit claim that Ubuntu is better for servers than Debian.
The simple rule of thumb is: You use Ubuntu on your Laptop/PC and Debian on your server.
Ubuntu will always have the more up-to-date packages, but Debian will always be the more stable system.
And since Debian is, in basic terms spoken, the stable version of Ubuntu, you won't need to worry about help. People will still be familiar with the system.
So summed up.
I recommend you go with Debian and use the minimal installation. This will give you only the operation system and an sshd server to connect.
I recommend you then install mariaDB as a database server and nginx as a webserver.
You will find great tutorials on how to do this in the internet. No need to look for one here. There are better ones out there. Setting up a DB or webserver is not OT-related after all.
You can install phpmyadmin if you want to, though you can do everything in the console as well.
Just read into it and google for tutorials. You will see, the information about it is endless and the help already provided throughout the internet is amazing.
It is learning by doing though. It might be annoying at times, but that's how it is with these things.