---
schema_version: "1"
id: 98c3d711001c044da39b3fab0158827ca72ebd15d0675dda5e3144c746c798c5
title: Deploying Mule Apps to Runtime Fabric
collection: mulesoft
version: current
locale: en-us
portal_url: https://docs.salesforce.com/mulesoft/current/en-us/runtime-fabric/2.9/deploy-index.md
canonical_url: https://docs.mulesoft.com/runtime-fabric/2.9/deploy-index
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 8c31e8cca9bec64e943173fc517652de5afecd15e9732738b0ea961788d1ec5b
description: MuleSoft Documentation Site
release: "2.9"
latest: false
---
---
product: Runtime Fabric
version: 2.9
---

# Deploying Mule Apps to Runtime Fabric

> For the full documentation index, see: https://docs.mulesoft.com/llms.txt

Anypoint Runtime Fabric enables you to deploy Mule applications and API Proxies to a Mule runtime
engine that is managed on Runtime Fabric.

## Supported Mule Runtime Server Versions

See
[Anypoint Runtime Fabric Runtimes Release Notes](https://docs.mulesoft.com/release-notes/runtime-fabric/runtime-fabric-runtimes-release-notes)
for information on supported versions of Mule runtime server.

## Before You Begin Deploying Mule Apps

Before you deploy a Mule app or API proxy to Runtime Fabric:

- Install and configure a Runtime Fabric.

- Ensure that you understand how resources are allocated as described in
  [Allocating resources for Application Deployment](https://docs.mulesoft.com/runtime-fabric/2.9/deploy-resource-allocation-self-managed).

- Publish your Mule app or API proxy to Exchange.

  > [!NOTE] Before you deploy Mule apps and API proxies to Runtime Fabric, you must first publish
  > them to Exchange. When you deploy Mule apps and API proxies from Runtime Manager, they are
  > published to Exchange automatically.

## Deployment Options

Use one of the following options to deploy Mule apps to Runtime Fabric:

- [Deploying a Mule App Using Runtime Manager](https://docs.mulesoft.com/runtime-fabric/2.9/deploy-to-runtime-fabric)  
  Use Runtime Manager to manually deploy Mule apps and API proxies.

- [Deploying a Mule App to Runtime Fabric using Maven (Mule 4)](https://docs.mulesoft.com/runtime-fabric/2.9/deploy-maven-4.x)  
  Use Maven for managing and deploying a Mule application or API proxy.

- [Deploying and Managing Apps in Runtime Fabric Using the CLI](https://docs.mulesoft.com/runtime-fabric/2.9/deploy-to-rtf-cli)  
  Use the Anypoint Platform CLI to deploy Mule applications

## Deployment Considerations

### Eventual consistency

Runtime Fabric is a self healing, eventually consistent platform. When building a CI pipeline for
Runtime Fabric deployment, you must take eventual consistency into consideration. After triggering a
deployment, the application status should become `RUNNING`. If the application status never
indicates `RUNNING`, the replicas contain a `state` and `reason` to indicate why the application is
not `RUNNING`.

### Application Deployment

When an application is deployed, the following events occur:

- The expected state of your application is stored, including application bundle and number of
  replicas.

- The application replica status shows as `PENDING`.

- When adequate compute and memory resources are available, each replica is attached to a node.

- If not already present, a Docker image corresponding to the Mule Runtime version is downloaded.

- The replica status shows as `STARTING`.

- The replica finishes loading the application.

- The replica status shows as `STARTED` and is able to perform work.

### Application Failure

If an application fails, for example, due to running of out memory, the following events occur:

- The replica status shows as `TERMINATED`.

- Runtime Fabric immediately attempts to restart the replica.

- The replica status shows as `RECOVERING`.

- If the replica is able to restart:

  - The replica finishes loading the application.

  - The replica status shows as `STARTED` and is able to perform work.

- If the replica is initially unable to restart, for example, it relies on a network resource which
  temporarily unavailable, the following events occur:

  - The replica status shows as `PENDING`, with a message indicating "CrashLoopBackoff". Runtime
    Fabric attempts to restart the replica, using exponential backoff to avoid an excessive number
    of restart attempts.

  - The replica status alternates between `RECOVERING` and `PENDING` until the issue preventing a
    successful restart is resolved.

  - The replica loads the application.

  - After a successful restart, the replica shows as `STARTED` and is able to perform work.

## See Also

- [Managing Mule Apps Deployed to Runtime Fabric](https://docs.mulesoft.com/runtime-fabric/2.9/managing-apps-deployed-runtime-fabric)

- [Hardening Mule Apps Deployed to Runtime Fabric](https://docs.mulesoft.com/runtime-fabric/2.9/hardening-apps-deployed-runtime-fabric)
