16
votes
Hosting my own Tildes
Is there a guide to hosting Tildes? The docs site has development setup but I couldn't get anywhere with that (not a Python developer)
Is there a guide to hosting Tildes? The docs site has development setup but I couldn't get anywhere with that (not a Python developer)
I would recommend against hosting unstable software in production, if you do not fully understand how it works. Because that's going to mean you won't be able to fix any kind of problem yourself. Remember that Tildes is in it's Alpha version (i.e. not stable nor feature complete) and despite it running surprisingly smoothly you can expect some level of technical troubles.
I'm triyng to get an actual production environment so a few people can chat around in it.
Not trying to be "that guy", but why not just use another piece of software designed for an end user? It would be way easier to just set up a server using Discord or a chatroom with Signal. Or even a private subreddit, if you need the link aggregation setup.
I'd recommend Discourse over all of those proprietary systems. Not only does it not require any sort of app or extra software, but it's free and open source software as well.
Plus, if OP doesn't want to self host, they have options for that.
EDIT: Signal is free and open source software, and I'm a goof who can't use search engines. It can also be self hosted.
Isn't Signal also FOSS? You also don't need to self-host it, although it doesn't have a website client.
Hm, it totally is. I actually looked it up when I wrote that comment just to make sure, but obviously didn't look close enough. I'll update my comment to reflect reality.
It doesn't have threaded comments from what I've seen.
Do you need nested comment threads like here or just one level? Mattermost has the latter.
I was looking for nested comment threads.
Because that's not self-hosted.
I mentioned this to @Deimos as well but I never was able to find out how.
Sometime I think we'll have a guide for how to build a Tildes site, but as it's still in alpha and all that info is in Deimos' head at the moment (and only there) I doubt it's high on the priority list for him.
No, I do actually have a document written up that's a list of everything that needs to be done to get it running on a fresh server. I could just paste it for you if you want, @haykam821, but I'd agree with the other people here that it's probably not a great idea if you're not quite experienced with administration-type tasks.
I'm sure you'd be able to get it running, but it wouldn't be a complete list of everything you need to do to set up the server, and I don't have explanations for how to do a bunch of general administration tasks that you would need to.
For example:
UPDATE
to give them the correct permissions.systemd
to figure out what's wrong and restart it?(There's certainly more than that too, the overall point is that it's very much not a "turnkey" system)
If you wouldn't mind sharing it, I'd love to see it. Some of the administration tasks you mentioned are things I've never done, but it sounds like an excellent opportunity to learn.
Plus, I too have kind of, sorta, maybe thought about the idea of using a fork of Tildes for a discussion forum about a specific subject, like a video game that I've always wanted to make.
Here's what's in the document. As I said, these should be most of the steps to solely get Tildes to work on a fresh Ubuntu 16.04 server, but doesn't cover all the other things like setting up permissions correctly, ssh security, firewall, etc. Most are the actual commands to run, but comment lines (starting with
#
) are descriptions of something that needs to be done but not the specific commands to do it.And these are commands that usually need to be done after every time you pull down new code updates:
There's an error with the nginx service
journalctl -xe
systemctl status nginx.service
The
nginx
user is missing. Whether this is because it should exist and doesn't, or because nginx is configured incorrectly, I can't say.There was a problem with the ssl certificate, was missing. not Its working.
They're set up in the SaltStack "pillar" (kind of like global config): https://gitlab.com/tildes/tildes/blob/master/salt/pillar/prod.sls
That file should be in /srv/pillar if you set up the symlinks shown above, and after editing it you'll need to run salt again to update the files:
How to create the admin user? Or what it is ? 😁
Connect to the database and run
UPDATE users SET permissions = '"admin"' WHERE username = 'whatever';
some help to connect to the database, the whole installation was almost automatically :D
And yeah a server noob here too :D
Thanks a lot 🙏
psql -U tildes tildes
will open a command-line client to the database.Amazing. Thanks.
Is there a way to open the registrations without and invite? 🤔
Hello, This line
UPDATE users SET permissions = '"admin"' WHERE username = 'whatever';
isn't working on my side.UPDATE 0
Also how to set a password for the admin user?You have to change the
'whatever'
to a username that exists. It will be easiest to register the admin user through the site itself, and change its password through the site instead of trying to do it manually.I see, but I'm still a bit confused.
Tildes registration is not open, so I'm unable to create a new user. There's already a user "tildes" into the database, I make it the admin, but how to login if I don't know the password and it cannot be changed from the database side since it is using the hash method?
You shouldn't be using the "Tildes" user, that's intended for attributing actions performed automatically by the site, such as automatically-scheduled topics. You should create a new user and make it an admin.
How to create a new user? I should have to insert the new user directly into the database? It is safe?
You can use
pshell
to do it, as shown here (ignore the parts related to the group if you don't also want to add a group): https://docs.tildes.net/instructions/development-setup#set-up-a-custom-user-and-group-optionaldon't waste your time. pshell does not work on ubuntu, at least I wasn't able to make it works.
You were probably trying to run it outside of the Vagrant VM, instead of ssh-ing in and running it inside.
No, I did that from the Vagrant VM
Here's what the terminal print
What happens with #564 ?
I'd like to see this. Part of the attraction of making Tildes open source is the satisfaction of seeing what uses others find for the code.
The login says "Unknown error"
Any idea what could cause this error?
Try to look into logs, everything should be there. You might be able to see in which part of the source code is the issue. After examining source code, you should be able to understand what went wrong and how to fix it.