One-Click Mediawiki

Updated on August 30, 2022
One-Click Mediawiki header image

Introduction

Vultr's One-Click MediaWiki application is a free and open-source wiki engine, initially developed for use on Wikipedia. Select a location, choose your instance size, and click Deploy Now. Your wiki will be ready to configure in about a minute. One-Click MediaWiki runs on Ubuntu Server.

Substitute the server's domain name or IP address anywhere oneclick.example.com appears in this installation guide.

1. Install SSL Certificate

This step is optional, but recommended. Most MediaWiki administrators will use a domain name and valid SSL certificate for their site. If you plan to use a commercial SSL certificate, see the Commercial SSL section.

If you skip this step:

To install a free Let's Encrypt SSL certificate:

  1. Register the name and create a DNS record for the server's IP address. Consult your DNS provider for instructions, or see our guide if using Vultr's DNS.

  2. Verify the DNS has finished propagation, and the name is visible throughout the internet before proceeding. Propagation usually happens quickly, but could take up to 48 hours in some cases.

  3. Connect to your server, with the root login from the Server Information screen.

  4. Install the certificate with certbot. Replace the domain name and email with your values.

     # certbot --nginx --redirect --agree-tos --no-eff-email -d oneclick.example.com -m admin@example.com 

    Certbot should report success when finished.

2. Run Installation Assistant

  1. Navigate to https://oneclick.example.com/mw-config/ to begin the MediaWiki installation.

  2. Enter the Login user credentials in the security pop-up. You'll find those credentials in the server information section of the customer portal, where you deployed the server.

    Server Login

  3. Select your language and click Continue.

  4. Enter the Upgrade key and click Continue.

    UpgradeKey

  5. Click Continue on the "Welcome to MediaWiki" screen.

  6. Make sure "Use the same account as for installation" is checked. Click Continue.

    DatabaseInstall

  7. Enter the configuration information:

    • Name of wiki
    • Project namespace
    • Username & password
    • Email address
  8. Select "I'm bored already, just install the wiki." Click Continue.

    FinishInstall

  9. Click Continue on the next two screens. When prompted, save LocalSettings.php in a safe location. (This step is optional.)

  10. Open a terminal session on the server with the root login credentials.

  11. Edit LocalSettings.php

    # nano /var/www/html/LocalSettings.php

    Edit the $wgServer variable. Change the ip address to the domain name. This statement is around line 30.

    $wgServer = "https://oneclick.example.com";
  12. Save and exit the file.

  13. Navigate to the homepage at https://oneclick.example.com

More Information

File uploads

File uploads are disabled by default. To enable them:

  1. Connect to the server via ssh as root.

  2. Edit LocalSettings.php

     # nano /var/www/html/LocalSettings.php

    Change the $wgEnableUploads variable to true. This statement is around line 75.

     $wgEnableUploads = true;
  3. Save and exit the file.

MySQL

A MySQL database is running on your VPS for MediaWiki. If you need to access the database directly:

  1. Connect to the server via ssh as root.

  2. Log into MySQL.

     # mysql -u root

    The MySQL root password is saved in /root/.my.cnf.

XHProf Performance Analysis

Access your XHProf installation at https://oneclick.example.com/xhprof/xhprof_html/. You'll find the username and password on your Server Information page.

PHPMyAdmin Database Manager

Access your PHPMyAdmin installation at https://oneclick.example.com/mysqladmin/. You'll find the username and password on your Server Information page.

Cockpit Control Panel

Access your Cockpit a control panel at https://oneclick.example.com:9080. You'll find the username and password on your Server Information page.

Cockpit Let's Encrypt SSL certificate

It's possible to configure Cockpit to use the same SSL certificate as MediaWiki with these steps. This step is optional.

  • Edit /etc/nginx/conf.d/cockpit.conf

      # nano /etc/nginx/conf.d/cockpit.conf
  • Look for this line.

      server_name _;
  • Replace the underscore with your server's domain name. The top of the file should now look like this.

      server {
              listen 9080 ssl;
              server_name oneclick.example.com;
  • Save and exit the file.

  • Edit /etc/cockpit/cockpit.conf

      # nano /etc/cockpit/cockpit.conf
  • Replace both instances of the server's IP address with the server's domain name.

      [WebService]
      Origins = https://oneclick.example.com:9080 wss://oneclick.example.com:9080
      ProtocolHeader = X-Forwarded-Proto
  • Save and exit the file.

  • Run certbot. For example:

      # certbot --nginx --redirect --agree-tos --no-eff-email -d oneclick.example.com -m admin@example.com 

Certbot detects the files you updated and automatically installs the certificate for Cockpit.

Disable Cockpit

If you need to disable Cockpit, SSH to the server as root and run the following command:

# systemctl disable --now cockpit.socket

Vultr Helper Scripts

Vultr provides helper scripts for common issues. SSH to the server as root to run these scripts.

Reset Nginx

If Nginx fails to load, you may have a typo or corruption in your configuration files. The fix-vhost.sh script will reset the Nginx configuration to default.

# /opt/vultr/fix-vhost.sh
All vhosts have been restored to their default state!

Check Software Versions

For debugging purposes, our support team may ask for your MediaWiki and Ubuntu versions. Run the version.sh script.

# /opt/vultr/version.sh 
OS: '18.04.4 LTS (Bionic Beaver)'
MediaWiki: '1.34.1'

Commercial SSL

You can use a Commercial SSL Certificate instead of the free Let's Encrypt certificate.

How to install a commercial SSL certificate

  1. Obtain a certificate from a certificate authority for your domain.

  2. Replace the server.crt and server.key files in /etc/nginx/ssl/ with the commercial certificate. Refer to your certificate vendor's documentation for details.

  3. Reboot the server.

     # reboot

Certbot considerations

Certbot makes changes to the Nginx configuration. If you used certbot to obtain a Let's Encrypt certificate, return the Nginx configuration files to default before installing the commercial certificate.

  1. Back up your existing Nginx configuration files

     # cp -r /etc/nginx/ /root/nginx
  2. Revoke your certbot certificate.

     # certbot delete
  3. Restore the default Nginx configuration.

     # /opt/vultr/fix-vhost.sh

How to Disable HTTPS

Disabling HTTPS security is possible, but not recommended.

  1. SSH to the server as root.

  2. Move mediawiki_https.conf out of the Nginx configuration folder and reboot the server.

     # mv /etc/nginx/conf.d/mediawiki_https.conf /root/
     # reboot

About One-Click Apps

One-Click apps are updated regularly without notice. When launching a One-Click app, you'll receive our latest version. We do not update deployed instances, and you are responsible for keeping the instance up-to-date. If you design an infrastructure based on One-Click apps and need to ensure the same app version in the future, take a snapshot of the initial deployment and create new instances from the snapshot.