XWiki with Docker

Last modified by Eleni Cojocariu on 2026/04/29 08:30

Explanation

Running XWiki with Docker means deploying it as a set of containers instead of installing it manually. XWiki requires a servlet container and a database.

With Docker, these are typically split into multiple containers:

  • one container for the database
  • one container for XWiki + the servlet container

This separation allows the database and XWiki application to run on different machines, if needed.

XWiki Docker Images and Tags

The official XWiki Docker Image provides multiple "tags", each corresponding to a specific configuration. Each tag is built from the corresponding Dockerfile. Out of the box, the official image supports:

  • Servlet container: Tomcat,
  • Databases: MySQL, PostgreSQL, MariaDB.

The "tag" naming strategy follow this pattern: <version>-<database>-<servlet_container>. There are also some generic tags like latest, stable, or lts. For example: 17.10.4-mysql-tomcat, stable-mysql. If parts of the tag are omitted, the following defaults apply: 

  • Database: defaults to MySQL,
  • Servlet container: defaults to Tomcat.
    For example, the tag 17 is equivalent to 17-mysql-tomcat. If no minor version is specified, it refers to the latest available version in that brench (e.g., 17.10.4, if that is the latest in the 17.x cycle).

FAQ

Is the database itself included in the image?

No, the image includes a JDBC driver for the specified database, it doesn't include the database itself. You need to run a separate database container.

Get Connected