Anbox Cloud documentation

Anbox Cloud makes it possible to run Android apps in the cloud and supports all kinds of different use cases, including high-performance streaming of graphics to desktop and mobile client devices.

Using container technology, Anbox Cloud manages the application life cycle while optimising for high density, performance and fast container boot times. It is scalable from a single-machine installation that can run scores of single Android systems to an entire cluster of machines. Anbox Cloud supports x86 and Arm64 hardware, providing the same set of features for both architectures. Deploying the solution is simple and straightforward, and it is based on powerful and battle-proven software from Canonical like LXD and Juju.

Anbox Cloud uses system containers to emulate Android systems. This method results in an isolation and security level similar to virtual machines with an overhead as low as process containers. Therefore, Anbox Cloud can provide at least twice the container density compared to other Android emulation solutions, and can serve up to 100 Android instances per server.

You should consider using Anbox Cloud if you want to deliver mobile applications that don’t depend on the capabilities of your user’s devices and that offload compute, storage and energy-intensive applications from the end device to the cloud. Typical use cases include mobile game streaming services, corporate application streaming, application automation and Android application testing.

Get started - a hands-on introduction to Anbox Cloud for new users
How-to guides
Step-by-step guides covering key operations and common tasks
Concepts - discussion and clarification of key topics
Technical information - specifications, APIs, architecture

What’s new

Along with bug fixes and general improvements, Anbox Cloud 1.16 includes the following changes:

  • Added support for Android 13.
  • Switched the AMD and Intel GPU support to be based on Vulkan and to use ANGLE as the EGL/OpenGL ES frontend driver.
  • Introduced the WebRTC data proxy server to enable full-duplex bidirectional data transmission between Android and a WebRTC-based client.
  • Added full support for Ubuntu 22.04 for regular and appliance deployments.

For detailed information, see the Release notes.

Project and community

Anbox Cloud is a Canonical product. It originally grew out of the Anbox open-source project, but its code base is now completely independent.

Thinking about using Anbox Cloud for your next project? Get in touch!


Level Path Navlink
0 / Anbox Cloud documentation
1 tut/landing Tutorials
2 tut/installing-appliance Install the appliance
2 tut/getting-started-dashboard Get started (web dashboard)
2 tut/getting-started Get started (CLI)
2 tut/creating-addon Create an addon
1 howto/landing How-to guides
2 howto/install/landing Install Anbox Cloud
3 howto/install/deploy-juju Deploy with Juju
3 howto/install/deploy-bare-metal Deploy on bare metal
3 howto/install/customise Customise the installation
3 howto/install/high-availability Enable High Availability
3 howto/install/validate Validate the deployment
2 howto/install-appliance/landing Install the appliance
3 howto/install-appliance/aws Install on AWS
3 howto/install-appliance/azure Install on Azure
3 howto/install-appliance/finalise Finalise the installation
2 howto/update/landing Update an installation
3 howto/update/control Control updates
3 howto/update/upgrade-appliance Upgrade the appliance
3 howto/update/upgrade-anbox Upgrade Anbox Cloud
2 howto/manage/landing Manage Anbox Cloud
3 howto/manage/manage-appliance Manage the appliance
3 howto/manage/tls-for-appliance Set up TLS for appliance
3 howto/manage/web-dashboard Use the web dashboard
3 howto/manage/images Manage images
3 howto/manage/logs View logs
3 howto/manage/ams-access Control AMS remotely
3 howto/manage/benchmarks Run benchmarks
3 howto/manage/resize-storage Resize LXD storage
2 howto/application/landing Manage applications
3 howto/application/create Create an application
3 howto/application/wait Wait for an application
3 howto/application/update Update an application
3 howto/application/resources Configure available resources
3 howto/application/delete Delete an application
3 howto/application/list List applications
3 howto/aar/deploy Deploy an AAR
3 howto/aar/configure Configure an AAR
3 howto/aar/revoke Revoke an AAR client
3 howto/application/test Test your application
3 howto/application/virtual-devices Create a virtual device
3 howto/application/extend Extend an application
3 howto/application/userdata Pass custom data
2 howto/port/landing Port Android apps
3 howto/port/permissions Grant permissions
3 howto/port/architecture Choose APK architecture
3 howto/port/obb-files Port APKs with OBB files
3 howto/port/configure-watchdog Configure the watchdog
3 howto/port/install-system-app Install APK as a system app
2 howto/container/landing Work with containers
3 howto/container/launch Launch a container
3 howto/container/wait Wait for a container
3 howto/container/access Access a container
3 howto/container/expose-services Expose services
3 howto/container/logs View the container logs
3 howto/container/delete Delete a container
3 howto/container/list List containers
3 howto/container/geographic-location Configure geographic location
3 howto/container/backup-and-restore Back up and restore application data
2 howto/addons/landing Use addons
3 howto/addons/enable-globally Enable globally
3 howto/addons/update Update addons
3 howto/addons/migrate Migrate from previous versions
3 howto/addons/install-tools Example: Install tools
3 howto/addons/backup-and-restore Example: Back up data
3 howto/addons/customise-android Example: Customise Android
3 howto/addons/emulate-platforms Example: Emulate platforms
3 howto/addons/best-practices Best practices
2 howto/monitor/landing Monitor Anbox Cloud
3 howto/monitor/telegraf Configure Telegraf
3 howto/monitor/collect-metrics Example: Collect metrics
3 howto/monitor/monitor-status Example: Monitor status
2 howto/stream/landing Implement streaming
3 howto/stream/access Access the stream gateway
3 howto/stream/web-client Implement a web-based client
3 howto/stream/oob-data Exchange OOB data
3 howto/stream/client-side-keyboard Use a client-side keyboard
3 howto/stream/debug Debug streaming issues
2 howto/cluster/landing Manage the cluster
3 howto/cluster/appliance Join a machine to the appliance
3 howto/cluster/configure-nodes Configure cluster nodes
3 howto/cluster/scale-up Scale up a LXD cluster
3 howto/cluster/scale-down Scale down a LXD cluster
2 howto/anbox/landing Work with the Anbox runtime
3 howto/anbox/develop-platform Develop a platform plugin
2 howto/troubleshoot/landing Troubleshoot Anbox Cloud
3 howto/troubleshoot/collect-info Collect information
1 ref/landing Reference
2 ref/provided-images Provided images
2 ref/android-features Supported Android features
2 ref/sdks Anbox Cloud SDKs
2 ref/api-reference API reference
3 ref/ams-http-api AMS HTTP API
3 ref/anbox-https-api Anbox HTTP API
3 ref/anbox-stream-gateway Stream Gateway API
3 ref/anbox-platform-sdk-api Anbox Platform SDK API
2 ref/instance-types Instance types
2 ref/platforms Anbox platforms
2 ref/prometheus Prometheus metrics
2 ref/ams-configuration AMS configuration
2 ref/application-manifest Application manifest
2 ref/addons Addons
2 ref/hooks Hooks
2 ref/perf-benchmarks Performance benchmarks
2 ref/webrtc-streamer WebRTC streamer
2 ref/lxd-docs LXD documentation
2 ref/glossary Glossary
1 exp/landing Explanation
2 exp/anbox-cloud About Anbox Cloud
2 exp/ams About the AMS
2 exp/applications About applications
2 exp/aar About the AAR
2 exp/containers About containers
2 exp/security About security
2 exp/clustering About clustering
2 exp/performance About performance
2 exp/capacity-planning About capacity planning
2 exp/gpu-support About GPU support
2 exp/application-streaming About application streaming
1 anbox/landing About the project
2 requirements Requirements
2 release-notes Release notes
2 roadmap Release roadmap
2 supported-versions Supported versions
2 component-versions Component versions


Mapping table
Path Location
/docs/install-appliance /docs/tut/installing-appliance
/docs/lxd-auto-scaling /docs/exp/clustering
/docs/usage/usecase-streaming-sdk /docs/ref/sdks
/docs/reference/ams-sdk-api-reference /docs/ref/sdks
/docs/installation/installation-appliance /docs/tut/installing-appliance
/docs/manage/getting-started /docs/tut/getting-started
/docs/installation/installation-quickstart /docs/howto/install/deploy-juju
/docs/installation/installation-customizing /docs/howto/install/customise
/docs/installation/high-availability /docs/howto/install/high-availability
/docs/installation/validation /docs/howto/install/validate
/docs/installation/upgrading-from-previous-versions /docs/howto/update/upgrade-anbox
/docs/howto/manage/managing-images /docs/howto/manage/images
/docs/howto/manage/managing-addons /docs/howto/addons/landing
/docs/howto/manage/managing-logs /docs/howto/manage/logs
/docs/howto/manage/managing-ams-access /docs/howto/manage/ams-access
/docs/manage/managing-ams-access /docs/howto/manage/ams-access
/docs/installation/installation-application-registry /docs/howto/aar/deploy
/docs/usage/usecase-application-testing /docs/howto/application/test
/docs/usage/usecase-virtual-devices /docs/howto/application/virtual-devices
/docs/manage/container-access /docs/howto/container/access
/docs/howto/container/view-log /docs/howto/container/logs
/docs/usage/usecase-container-configuration /docs/howto/container/geographic-location
/docs/howto/containers/backup-and-restore /docs/howto/container/backup-and-restore
/docs/monitoring/monitoring-installation /docs/howto/monitor/landing
/docs/howto/monitor/install /docs/howto/monitor/landing
/docs/monitoring/monitoring-grafana /docs/howto/monitor/grafana
/docs/monitoring/monitoring-nagios /docs/howto/monitor/nagios
/docs/implement-android-native-streaming-client /docs/howto/stream/native-client
/docs/implement-web-based-streaming-client /docs/howto/stream/web-client
/docs/exchange-out-of-band-data /docs/howto/stream/oob-data
/docs/integrate-keyboard /docs/howto/stream/client-side-keyboard
/docs/faq /docs/howto/troubleshoot/landing
/docs/sdks /docs/ref/sdks
/docs/reference/ams-rest-api-reference /docs/ref/ams-http-api
/docs/reference/anbox-http-api-reference /docs/ref/anbox-https-api
/docs/reference/anbox-stream-gateway-reference /docs/ref/anbox-stream-gateway
/docs/manage/instance-types-reference /docs/ref/instance-types
/docs/reference/anbox-platforms /docs/ref/platforms
/docs/reference/prometheus-metrics /docs/ref/prometheus
/docs/ams-configuration /docs/ref/ams-configuration
/docs/overview /docs/exp/anbox-cloud
/docs/manage/managing-applications /docs/exp/applications
/docs/manage/managing-addons /docs/howto/addons/landing
/docs/manage/application-registry /docs/exp/aar
/docs/manage/managing-containers /docs/exp/containers
/docs/manage/capacity-planning /docs/exp/clustering
/docs/manage/gpu-support /docs/exp/gpu-support
/docs/manage/benchmarking-a-deployment /docs/exp/benchmarking
/docs/manage/streaming-android-applications /docs/exp/application-streaming
/docs/usage/usecase-port-android-application-to-anbox-cloud /docs/exp/porting-issues
/docs/installation/installation-requirements /docs/requirements
/docs/exp/porting-issues /docs/howto/port/landing
/docs/exp/benchmarking /docs/howto/manage/benchmarks
/docs/changelog /docs/release-notes
/docs/howto/monitor/grafana /docs/howto/monitor/collect-metrics
/docs/howto/monitor/nagios /docs/howto/monitor/monitor-status