Zero to Mux (with wiki)

  • @bobotron I did, but there's stuff with it that's a bit on the fussy side with mediawiki, depending on how you want to do it. The redwerks short url file linked from mediawiki's info on it is pretty good.

    I did manage to get this to behave at one point on a multi-wiki-one-droplet install, but it was especially fussy from what I recall.

    Despite what some people may be eager to claim all over the place, I am not and never have claimed to be an expert (let alone 'genius') on mediawiki, particularly the server side of it. I have always been super clear I am a server novice at best, so the short url thing is not something I feel at all comfortable walking someone through.

  • Coder

    @thenomain So Thenomain doesn't forget...

    The LAMP droplet needs to be selected from the "one click install" page, when you go to set up a new droplet.

    Once you're in, the mysql_secure_installation requires you to enter the password of mysql. This should be created by default and stored in a directory. Look at the motd that displays when you first log in, it'll say to check "/root/.digitalocean_password" which you do with more /root/.digitalocean_password.

    In 1. [Step 1] under "Get Us Some MediaWiki", you need to add... sudo apt-get install php-xml and make sure to do a sudo service apache2 restart after that's done!

  • Coder

    And more...

    After installing TinyMUX and setting the port and all, I attempted to connect and I failed. Per Thenomain, he asked me to check if the Mux was running via... telnet localhost <port>

    Success, could reach connect screen. Then light bulb. Almost all ports are blocked by default (is this new to THIS distro of Ubuntu? idk). Need to allow through the firewall via... sudo ufw allow <port>/tcp.

  • @skew Digitalocean has the ufw firewall installed by default on the LAMP droplet one-click-apps; it's newish but I've seen it going back to around the start of the year from what I recall, at least.

    Info on it is here:

    That's the 'how to set it up', but the LAMP Ubuntu droplet has it installed and active by default, so if there are other adjustments you want to make, that covers other refinements/etc.

  • Coder

    @surreality Refinements such as how to block specific IPs! For when a ban on the MU just isn't enough!

    sudo ufw deny from

  • Coder

    @skew And more...

    I don't see it listed anywhere on any of the instructions (which isn't to say it isn't, just that I don't see it!), but after installing the basic stuff was root, I installed my game as mygameuser. Figured that was smart, right? Anyways, I couldn't get SQL to work (mind, I'm using Chime's branch). When doing Chime's configure, I was seeing... checking for mysql/mysql.h... no and I figured that's why SQL wasn't working. Right? Right. Sure.

    So, I did some digging here and found Ark recommending apt-get install -y libmysqlclient-dev and that did it.

  • Another heads-up: apparently Mediawiki dropped a new version with a lot of changes today. If you're just starting an install, keep the usual caveats in mind. It specifically notes:

    1.31 has several database changes since 1.30, and will not work without schema updates.

    Someone with a high level of clue re: how Mediawiki interacts with MySQL should probably take a peek to see if this changes how games will be interacting with it to avoid any surprises that might be lurking in wait. (That person is not me.)

  • Another quick update:

    If you're doing the multiple linked wikis/wiki family with shared resources on one droplet as described here, do not symlink the 'includes' folder. This one needs to remain independent in each of your separate wiki install folders. If it's not, an update to one crosses over to all of them. (Don't ask me why, because I don't know. It says you can do this, and, well, you can't without it glitching up, at least with 1.31, and before anyone else tears their hair out, well... there you go. I left serialized and vendor alone as well, and it's keeping the installs properly distinct.)