Getting Started

XWiki is a powerful open source wiki and collaboration platform that goes far beyond a standard wiki. It supports structured data, applications built with wiki pages, scripting, a rich extension ecosystem, and fine-grained access controls. You can use it as a company knowledge base, project documentation system, or internal app-building platform. Available as an open web service in Eyevinn Open Source Cloud.

Prerequisites

Step 1: Create a PostgreSQL database

XWiki stores all pages, users, and configuration in a relational database. Navigate to the PostgreSQL service in the OSC web console and create a new instance. Enter a name and a password when prompted.

Once the instance is running, note the IP and port shown on the instance card. The connection URL will be:

postgres://postgres:<password>@<IP>:<PORT>/postgres

Step 2: Store the database URL as a secret

Navigate to the XWiki service and open the Service Secrets tab. Click New Secret and create:

  • dburl — the PostgreSQL connection URL from Step 1

Step 3: Create an XWiki instance

Go to the My xwiki-platforms tab and click Create xwiki-platform. Fill in:

  • Name: a unique name for your instance (alphanumeric only, e.g. mywiki)
  • DatabaseUrl: {{secrets.dburl}}

Click Create and wait for the status indicator to turn green. The first startup takes a minute or two as XWiki initialises the database schema.

Step 4: Log in to XWiki

Click the instance URL to open the XWiki web interface. Log in with the default administrator credentials:

Field Value
Username Admin
Password admin

Change the admin password immediately after first login. Navigate to Admin → Users → Admin → Edit to set a new password.

Step 5: Configure your wiki

After logging in you will be prompted to complete a short setup wizard to configure the wiki name, register an admin email, and install the Standard XWiki flavour (recommended). Once setup completes your wiki is ready to use.

Usage example

XWiki exposes a REST API for reading and writing pages. To fetch the home page content:

curl -u Admin:admin \
  "https://<your-instance-url>/rest/wikis/xwiki/spaces/Main/pages/WebHome"

To create or update a page:

curl -u Admin:admin -X PUT \
  -H "Content-Type: application/xml" \
  -d '<page xmlns="http://www.xwiki.org"><title>My Page</title><content>Hello **world**!</content></page>' \
  "https://<your-instance-url>/rest/wikis/xwiki/spaces/Demo/pages/MyPage"

CLI usage

osc create xwiki-xwiki-platform mywiki \
  -o DatabaseUrl="postgres://postgres:mypassword@172.232.0.1:10505/postgres"

Resources