100% Managed Wiki deployment using Microsoft Azure App Service (Docker-based) and Azure Database for PostgreSQL Servers

Will Peixoto
4 min readFeb 16, 2024

--

cloud project

In this project based on a real-world scenario, I worked as a Cloud Engineer to deploy a Wiki (Wiki.js) to the cloud, 100% web, with access for all team members. This enabled collaborative document creation, and all team members could see the latest version of the document and propose improvements, allowing the team to better organize and manage documents.

To this solution deployment, I used Azure Database for PostgreSQL Servers and Azure App Service.

solution architecture

All important, procedural and operational documents, such as Runbooks and Knowledge Bases (KBs), which must always be available and are constantly updated, were no longer stored locally (standalone), avoiding data inconsistencies.

  1. Before kicking off the deployment of the container that will run Wiki.js, you gotta set up a PostgresSQL database instance first.

Creating the database takes a few minutes, so chill out and be patient!

database deployment

I forgot to mention, you need to check the ‘Allow public access from any Azure service within Azure to this server’ option. You can either tick it during the database creation or tweak this setting after creating the database.

2. Setting up the Web App.

In App Services, click on CreateWeb App.

After setting the resource name, set the Publish and Operating System properties as indicated:

Configure Docker as follows:

Now that the image for the container is all set up, we can wrap up the application creation.

3. After the deployment is done, you need to configure the access to the database that Wiki.js will use.

You’ll need to configure the parameters:

DB_TYPE: postgres
DB_HOST: <App Server URL>
DB_PORT: 5432
DB_NAME: postgres
DB_USER: <database admin user>
DB_PASS: <database admin user password>
DB_SSL: true

Add one at a time:

In the end, you’ll have these parameters properly created and filled in. Double-check the parameters and values, then save the changes.

Restart the application (Wiki.js).

4. If all configurations are correct, after a few minutes, you should see this page when accessing the application:

After configuring the application admin data, click on INSTALL.

Done, now just log in!

5. After logging in, you can already create your first page:

However, I suggest you go into the admin panel first and configure the theme, language, user groups, and users for your application.

You can do this by adding /a at the end of the URL. 😧

In my specific case, I installed support for the Portuguese (Brazil) language.

And now, after everything is set up, just log in and click on CREATE HOME PAGE.

The following page will be displayed:

The easiest way to create a page is with the Visual Editor:

That’s it! Now your job is to motivate your team to keep and document everything in this wiki! Good luck! 😁

--

--

No responses yet