Loading...
 

History: How to install WikiSuite

Preview of version: 147

As of 2020-12-31, this is ready for testing.

Requirements

  • A server
    • A virtual machine will do fine
    • At least 1 gig of RAM
  • A domain name (a sub-domain will do fine)

Set up your domain name

You should point your domain name(s) to your server before your proceed. Even better is to point a wildcard subdomain. For example, we want all traffic to dev1.wikisuite.org or *.dev1.wikisuite.org as this makes it easy to create many projects, such as

  • abc.dev1.wikisuite.org
  • def.dev1.wikisuite.org
  • etc.


You'll want something like this:

dev1 A record (put your IP address here)
*.dev1 CNAME dev1.wikisuite.org.


More info at Set up your domain name

How To Install Virtualmin

You should have a fresh instance of Ubuntu 20.04 LTS. It should work with Ubuntu 18.04 LTS and Debian 9 and 10 but this has not yet been tested. CentOS support is planned for 2021.

It is important that nothing else is installed on the server because Virtualmin will handle it. We'll use https://gitlab.com/wikisuite/virtualmin-installer/ to install Virtualmin which is then configured for optimal settings for WikiSuite.

Install Webmin and Virtualmin on Ubuntu OS :-
Download Virtualmin using the below script. It is basically a shell script that will handle rest of the installation once executed.

Log in to your server via SSH with the root user. (If you are not logged in as root, you should switch to root), Then

This downloads the install script (which you can inspect)
curl -o install-virtualmin.sh https://gitlab.com/wikisuite/virtualmin-installer/-/raw/master/install-virtualmin.sh
This is to inspect the script (optional)
nano install-virtualmin.sh
This runs the install script
bash install-virtualmin.sh

A web URL will be provided after installation is complete, you can access the Virtualmin by the provided URL Ex:- https://example.org:10000 (GUI is at port 10000)

Update your system to latest available packages

Updates the list of available packages and their versions
apt-get update
Installs newer versions of the packages you have
apt-get upgrade

You have a basic server. Congrats!

Next steps:

  1. Create a Virtual Server
  2. Install Tiki Manager
  3. Use Tiki Manager to install Tiki Wiki CMS Groupware

Create Virtual Servers

Virtualmin > Create Virtual Server

Server Create

Suppose your desired domain is example.org, use the following pattern:
Create a Virtual Server for manager.example.org
And then, a Sub-Server for example.org

Top-level Virtual Server

Domain name (This will be for Tiki Manager): manager.example.org
Administration username (pick a descriptive word for that domain): example
Administration password: Set a Strong Password (if not, you will very likely get hacked)

Sub-server

Domain name (This will be for your site): example.org
No need to pick username and password like above because user you created can access both.

If a domain name is valid, free SSL (for https://) certificates from Let's Encrypt are automatically created.

So now, you should be able to visit both manager.example.org and example.org and see a placeholder page. If domain name is not set up, you can Preview Website via Virtualmin

Installation of Tiki Manager

For more info, please see: https://doc.tiki.org/Manager

So now, you need to log in using SSH with the user you just created (and not as root)

1. Install Tiki Manager :-
Following on above, you will end up in a directory like /home/example/:

To verify where you are, type the following command which means print working directory
example@xyz:~$ pwd
/home/example/

Create a directory called tiki-manager (you can pick another name)
$ mkdir tiki-manager
Move into this new directory
$ cd tiki-manager
Fetch Tiki Manager directly from sources. The last period/dot (.) indicates to put files in current directory (vs creating a new directory)
$ git clone --depth 1 --branch master https://gitlab.com/tikiwiki/tiki-manager.git .
Then run the following. On first run, it will finish the setup (Fetch Composer and get PHP dependencies, Create the SQLite database, etc.)
$ php tiki-manager.php manager:info

When asked "Enter passphrase (empty for no passphrase):", just click "Enter" unless you know that you need a passphrase (probably not)

Tiki Manager's web interface

More info: https://doc.tiki.org/Tiki-Manager-Web-UI

As of 2020-12-29, the web interface can't be used to install Tiki on Virtualmin (it assumes you are using root user for MySQL, which is not the case). Until this is resolved, you need to use the command line interface to install. However, you can use the web interface for other operations like upgrades and backups.

cd /home/example/tiki-manager/
php tiki-manager.php webmanager:enable


Recommended answers:
This will enable the Tiki Manager administration web panel. Continue with this action?: yes
WWW Tiki Manager directory: /home/example/public_html
Pick a user name and password
Restrict use to localhost: no because you want to access remotely

Create Tiki Instance through Command Line

So now to install Tiki, you need a database. Virtualmin actually already created one for you.

Here is video to give you an idea of the process, how to get database details

Now, Tiki Manager will create a fresh Tiki instance fetching files from Git, and using database mentioned above.

For more info, please see:- https://doc.tiki.org/manager#instance

php tiki-manager.php instance:create


Recommended answers:

  • Connection type: local (because Tiki Manager is installing within the same server)
  • WebURL: http://example.org (as above)
  • Name: you can keep what it proposes. This is just cosmetic.
  • Email: Your email so system can alert you of issues
  • WebRoot: /home/example/domains/example.org/public_html
  • You will get a warning (Target webroot folder is not empty). Installing a new Tiki instance, all files will be deleted. Do you want to continue? (yes/no): yes
  • TempDir: /home/example/tmp/
  • Backup user: (accept proposed value)
  • Backup group: (accept proposed value)
  • Backup file permissions: (accept proposed value)
  • Branch: git : 21.x (this provides latest released version of branch 21 + unreleased bug fixes)
  • Database host: (accept proposed value)
  • Database user: username from the Virtual Server (not the Sub-Server)
  • Database password: password from the Virtual Server (not the Sub-Server)
  • Database name: name from the Sub-Server (not the Virtual Server)


Here is video to give you an idea of the process, but you should use recommended answers above

After you have answered all the questions, it will take quite some time to install your Tiki. Perhaps 20-30 minutes or more, depending on your context. Just be patient and let it run.

After Successfully Creating tiki-instance


You will get the Tiki HomePage as below.
10

Login with
u: admin
p: admin

And follow the instructions to set a strong password.

The Tiki Admin Dashboard looks like.
11

If SSL set up was successful above, you can force all traffic to SSL:

To access the administration
{http://example.org/tiki-admin.php}

Control Panels > Security > General security >"check" Protect all sessions with HTTPS > Apply the changes

Admin

Setup Mail


Virtualmin > Edit User > Add a new user to this server

Email

Configure email account to Tiki's webmail

For more info, please see: https://doc.tiki.org/Webmail

To access Control panel
https://example.org/tiki-admin.php

Control Panel > click on advance button > enable Webmail

or

To access Webmail

http://example.org/tiki-admin.php?page=webmail

Webmail

Tiki integrates the Cypht webmail, which can aggregate email from many accounts, using standards: POP, IMAP, SMTP, JMAP

Webmail1

Webmail

Configuring webmail accounts

After enabling webmail from the features section of the admin panel you will be able to enter the webmail section from the application menu. In your first visit to the webmail you will be automatically redirected to the webmail configuration panel.


Configure SMTP Server
By default Tiki Manager uses sendmail to send email notifications. If you intend to use SMTP instead add the following lines to your .env file.
Virtualmin > file manager > Home > tiki-manager > .env dist

SMTP_HOST=<SERVER_ADDRESS>
SMTP_PORT=<SERVER_PORT>
SMTP_USER=(optional if authentication is required)
SMTP_PASS=(optional if authentication is required)

Troubleshoot

The installer is locked!

When you attempt to load tiki-install.php in your browser, Tiki displays the message:

Installer disabled. Remove 'db/lock' to enable the installer.

To re-enable the install script, use your host's file management software to remove the file lock from your Tiki's ../db/ directory.

You can now re-run the install script.

File not found.


Tiki Installer reports a Security Precaution.

When you attempt to load tiki-install.php in your browser, Tiki displays the Security Alert page:

File not found.


To protect your site, if you (or anyone else) attempts to run the Tiki installer on a site that has an existing Tiki database, Tiki displays the security precaution alert and requires you to login using your database's username and password.

Enter the database username and password that you used when creating the database.

✔ TIP
If you forgot these items, Tiki has recorded them in the [../db/local.php file].


If the tiki installer security precaution goes in loop after entering database username and password
please add the following command

$ php console.php database:update

Extras

$ php apt-get install unoconv

For https://doc.tiki.org/unoconv

History

Advanced
Information Version
Marc Laporte 149
View
Marc Laporte 148
View
Marc Laporte 147
View
Marc Laporte Removing this because 1- it should work, 2- If issue, we should point to upstream doc, 3- This image didn't help me 146
View
Marc Laporte 145
View
Marc Laporte 144
View
Marc Laporte 143
View
Marc Laporte 142
View
Marc Laporte 141
View
Marc Laporte 140
View
Marc Laporte 139
View
Marc Laporte 138
View
Marc Laporte 137
View
Marc Laporte 136
View
Marc Laporte 135
View
Vignesh Chettiyar 134
View
Vignesh Chettiyar 133
View
Vignesh Chettiyar 132
View
Marc Laporte 131
View
Marc Laporte 130
View
Marc Laporte 129
View
Marc Laporte 128
View
Marc Laporte 127
View
Marc Laporte 126
View
Marc Laporte code Plugin modified by editor. 125
View
Marc Laporte code Plugin modified by editor. 124
View
Marc Laporte 123
View
Marc Laporte Major update 122
View
Marc Laporte 121
View
Marc Laporte 120
View
Marc Laporte 119
View
Marc Laporte Using this option: https://dev.tiki.org/Tiki-and-Virtualmin-interop#Virtual_Server_for_Tiki_Manager_and_Sub-Servers_for_all_Tiki_instances 118
View
Marc Laporte 117
View
Marc Laporte 116
View
Marc Laporte 115
View
Marc Laporte 114
View
Marc Laporte 113
View
Marc Laporte We generally use example.org instead of example.com 112
View
Marc Laporte A note about other OSs 111
View
Marc Laporte About domain names 110
View
Marc Laporte You need to create Virtual Servers so Tiki Manager has a place to operate 109
View
Marc Laporte @Roshan @Vignesh and @Chirag: Those were really nice screenshots. But the point is to make it simple to install WikiSuite/Tiki. Tiki Manager's job is to install TIki, and if it failed, the bug must be fixed, and not document a workaround. 108
View
Marc Laporte blackboard is nicer. colors="shell" is more relevant because these are shell commands 107
View
Marc Laporte code Plugin modified by editor. 106
View
Marc Laporte That instruction was obviously not tested! 105
View
Marc Laporte 104
View
Vignesh Chettiyar 103
View
Vignesh Chettiyar 102
View
Vignesh Chettiyar 101
View
Vignesh Chettiyar 100
View