--- title: AWS Marketplace AMI Deployment description: Deploy Chatwoot on AWS using the marketplace AMI listing sidebarTitle: AWS Marketplace --- # AWS Chatwoot Deployment Guide The following is the guide for deploying Chatwoot on AWS using the marketplace listing. Use our helm charts with AWS Elastic Kubernetes Service(EKS) for a cloud-native deployment. ## Prerequisites - AWS account ## Install Chatwoot via AWS Marketplace AMI ### Step 1: Subscribe to Chatwoot 1. Go to [Chatwoot AWS marketplace listing](https://aws.amazon.com/marketplace/pp/prodview-tolblk4kmdqd4) and click on **Subscribe**. ![Subscribe to Chatwoot](/self-hosted/images/aws-ami/awsmp-01-subscribe.png) ### Step 2: Sign In 2. Sign in with your AWS account. ![AWS Sign In](/self-hosted/images/aws-ami/awsmp-02-signin.png) ### Step 3: Continue to Configuration 3. Click on **Continue to Configuration**. ![Continue to Configuration](/self-hosted/images/aws-ami/awsmp-03-continue.png) ### Step 4: Configure Software 4. Select the latest version in **Software Version** and pick your AWS **region**. Click **Continue to Launch**. ![Configure Software](/self-hosted/images/aws-ami/awsmp-04-configure.png) ### Step 5: Launch Configuration 5. Review the launch configuration. Leave the **Choose Action** field with the default value **Launch from Website**. Choose a VPC and subnet as per your AWS region preference. ![Launch Configuration](/self-hosted/images/aws-ami/awsmp-05-launch.png) ### Step 6: Create Security Group 6. Scroll down to the **Security Group** section and click **Create New Based On Seller Settings**. ![Create Security Group](/self-hosted/images/aws-ami/awsmp-06-sg.png) ### Step 7: Save Security Group 7. Save the new security group and choose it after creation. ![Save Security Group](/self-hosted/images/aws-ami/awsmp-07-sg.png) ### Step 8: Configure Key Pair 8. Pick a key pair you already have or create a new one in the region you are deploying. Click **Launch**. ![Configure Key Pair](/self-hosted/images/aws-ami/awsmp-08-keypair.png) ### Step 9: Launch Confirmation 9. AWS should now display a congratulations screen confirming that Chatwoot instance is launched successfully. Click on the **EC2 Console** link. ![Launch Confirmation](/self-hosted/images/aws-ami/awsmp-09-launch.png) ### Step 10: Wait for Instance 10. Wait for a few minutes to let the instance come up. ![Wait for Instance](/self-hosted/images/aws-ami/awsmp-10-ec2.png) ### Step 11: Get Public IP 11. Select the instance and copy the public IP. ![Get Public IP](/self-hosted/images/aws-ami/awsmp-11-public-ip.png) ### Step 12: Access Chatwoot 12. Visit `http://:3000`. This should bring up the Chatwoot UI. Congratulations. Woot! Woot!! ![Access Chatwoot](/self-hosted/images/aws-ami/awsmp-12-chatwoot.png) ## Configuring Chatwoot To configure Chatwoot, we need to SSH into the instance. We will use **AWS Console Connect** for this. ### Step 1: Connect to Instance 1. Select the instance and click on **Connect**. ![Connect to Instance](/self-hosted/images/aws-ami/awsmp-13-connect.png) ### Step 2: Use Ubuntu User 2. Change the username from `root` to `ubuntu` and click **Connect**. ![Use Ubuntu User](/self-hosted/images/aws-ami/awsmp-14-connect.png) ### Step 3: Configure Environment Variables 3. Switch to the `chatwoot` user and configure the necessary environment variables. Refer to [Environment variables](/self-hosted/configuration/environment-variables) document for the complete list. ```bash sudo -i -u chatwoot cd chatwoot vi .env ``` It is recommended to configure a proxy server like Nginx and set up SSL. Make sure to modify the security group created in step 6 accordingly. ## Updating the Instance Please follow the Chatwoot update process in the standard [Linux VM setup](/self-hosted/deployment/linux-vm). ## Security Recommendations ### SSL Configuration - Set up SSL certificates using Let's Encrypt or AWS Certificate Manager - Configure Nginx as a reverse proxy - Update security group rules to allow HTTPS traffic (port 443) ### Access Control - Restrict SSH access to specific IP addresses - Use IAM roles for EC2 instances where possible - Enable AWS CloudTrail for audit logging ### Backup Strategy - Set up automated EBS snapshots - Configure database backups - Store backups in S3 with appropriate lifecycle policies ## Troubleshooting ### Common Issues **Problem**: Cannot access Chatwoot on port 3000 **Solutions**: - Check security group allows inbound traffic on port 3000 - Verify instance is running and healthy - Check if Chatwoot service is running: `sudo systemctl status chatwoot` **Problem**: Chatwoot service fails to start **Solutions**: - Check logs: `sudo journalctl -u chatwoot -f` - Verify environment variables are correctly set - Ensure database connection is working - Check disk space and memory usage ### Support Resources - [AWS Support](https://aws.amazon.com/support/) - [Chatwoot Community Discord](https://discord.com/invite/cJXdrwS) - [GitHub Issues](https://github.com/chatwoot/chatwoot/issues) --- The AWS Marketplace AMI provides a quick way to deploy Chatwoot with pre-configured settings. For production use, ensure you implement proper security measures and backup strategies.