Deploying Multiwoven on Azure VMs
This guide will walk you through setting up Multiwoven on an Azure VM. We’ll cover launching the VM, installing Docker, running Multiwoven with its dependencies, and finally, accessing the Multiwoven UI. Prerequisites:- An Azure account with an active VM (Ubuntu recommended).
 - Basic knowledge of Docker, Azure, and command-line tools.
 - Docker Compose installed on your local machine.
 
- 
Launch an Azure VM: Choose an Ubuntu VM with suitable specifications for your workload.
Network Security Group Configuration:
- Open port 22 (SSH) for inbound traffic from your IP address.
 - Open port 8000 (Multiwoven UI) for inbound traffic from your IP address (optional).
 
 - 
Connect to your VM: Use SSH to connect to your Azure VM.
Example:
Replace
/path/to/your-key-pair.pemwith the path to your key pair file and<your_vm_public_ip>with your VM’s public IP address. - 
Update and upgrade: Run 
sudo apt update && sudo apt upgrade -yto ensure your system is up-to-date. 
- Install Docker: Follow the official Docker installation instructions for Ubuntu: https://docs.docker.com/engine/install/
 - 
Install Docker Compose: Download the latest version from the Docker Compose releases page and place it in a suitable directory (e.g., 
/usr/local/bin/docker-compose). Make the file executable:sudo chmod +x /usr/local/bin/docker-compose. - 
Start and enable Docker: Run 
sudo systemctl start dockerandsudo systemctl enable dockerto start Docker and configure it to start automatically on boot. 
docker-compose.yml file and Configure Environment:
- Download the file:
 
- Download the 
.envfile: 
- Rename the file .env.production to .env and update the environment variables if required.
 
- **Configure 
.env, This file holds environment variables for various services. Replace the placeholders with your own values, including:DB_PASSWORDandDB_USERNAMEfor your PostgreSQL databaseREDIS_PASSWORDfor your Redis server- (Optional) Additional environment variables specific to your Multiwoven configuration
 
 
.env file:
- Start Multiwoven: Navigate to the 
multiwovendirectory and rundocker-compose up -d. This will start all Multiwoven services in the background, including the Multiwoven UI. 
http://<your_vm_public_ip>:8000 (replace <your_vm_public_ip> with your VM’s public IP address). You should now see the Multiwoven UI.
6. Stopping Multiwoven:
To stop Multiwoven, navigate to the multiwoven directory and run.
 Make sure to run the above command from the same directory where the 
docker-compose.yml file is present.Note: the frontend and backend services run on port 8000 and 3001, respectively. Make sure you update the VITE_API_HOST environment variable in the .env file to the desired backend service URL running on port 3000. 
- Depending on your network security group configuration, you might need to open port 8000 (Multiwoven UI) for inbound traffic.
 - For production deployments, consider using a reverse proxy (e.g., Nginx) and a domain name with SSL/TLS certificates for secure access to the Multiwoven UI.