Microsoft Azure App Service (Docker-based) and Azure Database for PostgreSQL Servers to Deploy a Fully Managed Wiki site

Lionell Jenious
4 min readAug 18, 2024

--

Microsoft Azure App Service (Docker-based) and Azure Database for PostgreSQL Servers to Deploy a Fully Managed Wiki site

In project, inspired by a real-world scenario, I took on the role of a Cloud Engineer to solve the challenge of managing documents in a decentralized manner, which posed risks of data inconsistency and inefficiencies. The solution was to migrate all these documents to a cloud-based Wiki, accessible by the entire team. This enabled collaborative document creation, allowed team members to track the latest document versions, and provided a platform for proposing improvements.

The deployment utilized Microsoft Azure App Service (Docker-based) and Azure Database for PostgreSQL Servers, ensuring that all important documents, such as Runbooks and Knowledge Bases (KBs), were stored in a centralized and consistent manner. This prevented data inconsistencies and improved document management across the organization.

Project Use Case Description & Steps:

Step 1: Creating an Azure PostgreSQL DB Instance

  • Provisioned an Azure Database for PostgreSQL to serve as the backend for the Wiki.
Azure PostgreSQL DB Instance
PostgreSQL Server Name:svr01wiki

Step 2: Setting Up Azure Firewall for PostgreSQL

Configured the Azure Firewall to allow access to Azure services:

  • Added Client IP address for Inbound connections
Added Client IP address for Inbound connections
  • Allow access to Azure services: Yes
Configured the Azure Firewall to allow access to Azure services
  • Downloaded pgAdmin 4–8.10 for PostgreSQL (Windows database tool)
https://www.pgadmin.org/download/
  • Configured the pgAdmin 4–8.10 Tool
Add New Server
Configured the pgAdmin 4–8.10 Tool [ hostname, username, password]
Configured the pgAdmin 4–8.10 Tool — General
Configured the pgAdmin 4–8.10 Tool — Connection
Configured the pgAdmin 4–8.10 Tool
  • Verified Login for the pgAdmin 4–8.10 Tool

Step 3: Creating a New Azure App Service (Docker-based)

  • Deployed a new Azure App Service configured to run a Docker image for the Wiki application.
  • Image and Tag: requarks/wiki:2
Deployed a new Azure App Service configured to run a Docker image for the Wiki application.

Step 4: Configuring the App Service

  • Configured the environment variables for the App Service to connect to the PostgreSQL database:
Configured the environment variables for the App Service to connect to the PostgreSQL database:

Step 5: Restarting App Service & Checking Logs

  • Restarted the App Service to apply the configuration.
  • Verified that the service was running correctly by checking logs and accessing the provided URL.
Restarted the App Service to apply the configuration.
Verified that the service was running correctly by checking logs and accessing the provided URL.

Step 6: Setting Up the Wiki

Accessed the admin menu at <URL>/a to perform initial setup:

  • Updated the Site Name and Logo.
  • Customized the login background image.
  • Created the Home Page for the Wiki.
Logged into the Wiki via <URL>/login https://wikiweb….azurewebsites.net
Completed Wiki.js
Updated the Site Name and Logo / Customized the login background image / Created the Home Page for the Wiki.

Additional Considerations:

For a production environment, additional integrations could be implemented, such as:

  • Backup Integration: Using Microsoft Azure Blob Storage for backups.
  • Authentication: Integrating with Azure Active Directory for enhanced authentication and user management.

Conclusion:

The successful completion of this final Azure Bootcamp project showcased the power and flexibility of Microsoft Azure services in deploying a managed Wiki solution. This project not only centralized document management but also enhanced collaboration across the team, providing a robust and scalable solution for future needs

--

--

Lionell Jenious
Lionell Jenious

Written by Lionell Jenious

Cloud Software Network Engineer | AWS | AI/ML | Blockchain | Azure | Google Cloud | VMware | Cloud Computing | DevOps | Software Defined Networks SD-WAN

No responses yet