Skip to content

Commit c0f3b7b

Browse files
feat(installation-guides): improve azure aci documentation (#2935)
## Description Provide a concise summary of the changes made in this pull request - Improve Azure ACI documentation ## Pull request type Check the appropriate box: - [ ] Review Fixes - [x] Documentation Overhaul - [ ] Feature/Story - Link one or more Engineering Tickets * - [ ] A-Force - [ ] Error in documentation - [ ] Maintenance ## Documentation tickets Link to one or more documentation tickets: - ## Checklist From the below options, select the ones that are applicable: - [ ] Checked for Grammarly suggestions. - [ ] Adhered to the writing checklist. - [ ] Adhered to the media checklist. - [ ] Verified and updated cross-references or added redirect rules. - [ ] Tested the redirect rules on deploy preview. - [ ] Validated the modifications made to the content on the deploy preview. - [ ] Validated the CSS modifications on different screen sizes.
1 parent b7abb76 commit c0f3b7b

File tree

1 file changed

+37
-0
lines changed
  • website/docs/getting-started/setup/installation-guides

1 file changed

+37
-0
lines changed

website/docs/getting-started/setup/installation-guides/azure-aci.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,43 @@ Once you have completed the installation process, consider performing the tasks
145145
</a>
146146
</div>
147147

148+
## Best Practices & Things Not to Do When Deploying Appsmith on Azure ACI
149+
150+
When deploying **Appsmith** on **Azure Container Instances (ACI)**, it's crucial to avoid certain architectural decisions that can lead to performance issues, data inconsistency, or outright application failure. The following anti-patterns are particularly relevant when using Azure Files or network-mounted file systems.
151+
152+
### Avoid Using Azure Files (or Any Network-Mounted File System) for Appsmith Storage
153+
154+
While Azure Files offers a convenient way to persist data, it is **not suitable** for hosting Appsmith's core components such as MongoDB, Redis, or internal file storage.
155+
156+
#### Common Mistakes
157+
158+
1. **Running internal MongoDB, Redis, or file storage on Azure Files**
159+
- Appsmith is not designed to work efficiently with network-mounted volumes as primary persistent stores.
160+
- Issues observed:
161+
- Sluggish performance.
162+
- Data corruption.
163+
- Intermittent failures and inconsistencies.
164+
- App crashes on startup or under load.
165+
166+
2. **Using Azure Files to store runtime data for internal services**
167+
- These services (MongoDB, Redis) are latency-sensitive and require fast local or SSD-backed storage to function properly.
168+
169+
#### Recommended Approach
170+
171+
To ensure a **stateless, reliable, and production-grade deployment**, follow these best practices:
172+
173+
- **Run Appsmith container on ACI using Azure Files only for minimal required mounts** (e.g., config files, if needed).
174+
- **Use external managed services** for critical components:
175+
- [**MongoDB**](/getting-started/setup/instance-configuration/custom-mongodb-redis): Use a cloud-managed MongoDB (e.g., MongoDB Atlas) hosted in Azure or nearby region.
176+
- [**Redis**](/getting-started/setup/instance-configuration/external-redis): Use **Azure Cache for Redis** or provision your own Redis cluster.
177+
- [**PostgreSQL**](/getting-started/setup/instance-configuration/external-postgresql-rds): Use **Azure Database for PostgreSQL** to support advanced features like **Workflows** and **SAML SSO**.
178+
179+
This approach ensures your Appsmith instance is:
180+
181+
- **Stateless**
182+
- **Easy to scale and recover**
183+
- **Less prone to I/O bottlenecks and crashes**
184+
148185
## Troubleshooting
149186

150187
If you are facing issues during deployment, refer to the guide on [troubleshooting deployment errors](/help-and-support/troubleshooting-guide/deployment-errors). If you continue to face issues, contact the support team using the chat widget at the bottom right of this page.

0 commit comments

Comments
 (0)