> For the complete documentation index, see [llms.txt](https://docs.enclaive.cloud/confidential-cloud/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.enclaive.cloud/confidential-cloud/technology-in-depth/intel-sgx/enclaive-development-kit.md).

# enclaive Development Kit

Here you will find some practical tutorials for enclaive's confidential computing solution using Intel SGX.&#x20;

{% hint style="info" %}
Download the enclaive development kit from Github
{% endhint %}

## Intel SGXv2-ready Containers

The following containers are available to deploy workloads in enclaves.

| <p><a href="https://github.com/enclaive/enclaive-docker-arangodb-sgx"><img src="https://avatars.githubusercontent.com/u/5547849" alt="arangodb-sgx"></a><br>ArangoDB-SGX</p>                                                                                                                  |                 <p><a href="https://github.com/enclaive/enclaive-docker-mariadb-sgx"><img src="https://www.vectorlogo.zone/logos/mariadb/mariadb-icon.svg" alt="mysql-sgx"></a><br>MariaDB-SGX</p>                |      <p><a href="https://github.com/enclaive/enclaive-docker-mongodb-sgx"><img src="https://raw.githubusercontent.com/devicons/devicon/master/icons/mongodb/mongodb-plain.svg" alt="mongodb-sgx"></a><br>MongoDB-SGX</p>      |       <p><a href="https://github.com/enclaive/enclaive-docker-redis-sgx"><img src="https://raw.githubusercontent.com/devicons/devicon/master/icons/redis/redis-plain.svg" alt="redis-sgx"></a><br>Redis-SGX</p>      |                                                                                                                                                                                                               |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p><a href="https://github.com/enclaive/enclaive-docker-nodejs-sgx"><img src="https://raw.githubusercontent.com/devicons/devicon/master/icons/nodejs/nodejs-plain.svg" alt="nodejs-sgx"></a><br>Nodejs-SGX</p>                                                                                | <p><a href="https://github.com/enclaive/enclaive-docker-python-sgx"><img src="https://raw.githubusercontent.com/devicons/devicon/master/icons/python/python-original.svg" alt="python-sgx"></a><br>Python-SGX</p> |              <p><a href="https://github.com/enclaive/enclaive-docker-rust-sgx"><img src="https://raw.githubusercontent.com/devicons/devicon/master/icons/rust/rust-plain.svg" alt="rust-sgx"></a><br>Rust-SGX</p>             |             <p><a href="https://github.com/enclaive/enclaive-docker-go-sgx"><img src="https://raw.githubusercontent.com/devicons/devicon/master/icons/go/go-original.svg" alt="go-sgx"></a><br>Go-SGX</p>            | <p><a href="https://github.com/enclaive/enclaive-docker-php-sgx"><img src="https://raw.githubusercontent.com/devicons/devicon/master/icons/php/php-original.svg" alt="php-sgx"></a><br>PHP-SGX</p>            |
| <p><a href="https://github.com/enclaive/enclaive-docker-ruby-sgx"><img src="https://raw.githubusercontent.com/devicons/devicon/master/icons/ruby/ruby-plain.svg" alt="ruby-sgx"></a><br>Ruby-SGX</p>                                                                                          |      <p><a href="https://github.com/enclaive/enclaive-docker-java-sgx"><img src="https://raw.githubusercontent.com/devicons/devicon/master/icons/java/java-original.svg" alt="java-sgx"></a><br>Java-SGX</p>      |                    <p><a href="https://github.com/enclaive/enclaive-docker-c-sgx"><img src="https://raw.githubusercontent.com/devicons/devicon/master/icons/c/c-original.svg" alt="c-sgx"></a><br>C-SGX</p>                   | <p><a href="https://github.com/enclaive/enclaive-docker-cpp-sgx"><img src="https://raw.githubusercontent.com/devicons/devicon/master/icons/cplusplus/cplusplus-original.svg" alt="cplusplus-sgx"></a><br>Cpp-SGX</p> | <p><a href="https://github.com/enclaive/enclaive-docker-cs-sgx"><img src="https://raw.githubusercontent.com/devicons/devicon/master/icons/csharp/csharp-original.svg" alt="csharp-sgx"></a><br>Csharp-SGX</p> |
| <p><a href="https://github.com/enclaive/enclaive-docker-mosquitto-sgx"><img src="https://raw.githubusercontent.com/eclipse/mosquitto/master/logo/mosquitto-logo-min.svg" alt="mosquitto-sgx"></a><br>Mosquitto-SGX</p>                                                                        |    <p><a href="https://github.com/enclaive/enclaive-docker-nginx-sgx"><img src="https://raw.githubusercontent.com/devicons/devicon/master/icons/nginx/nginx-original.svg" alt="nginx-sgx"></a><br>Nginx-SGX</p>   | <p><a href="https://github.com/enclaive/enclaive-docker-wordpress-sgx"><img src="https://raw.githubusercontent.com/devicons/devicon/master/icons/wordpress/wordpress-plain.svg" alt="wordpress-sgx"></a><br>Wordpress-SGX</p> |    <p><a href="https://github.com/enclaive/enclaive-docker-umami-sgx"><img src="https://raw.githubusercontent.com/umami-software/umami/master/public/safari-pinned-tab.svg" alt="umami-sgx"></a><br>Umami-SGX</p>    |                                                                                                                                                                                                               |
| <p><a href="https://github.com/enclaive/enclaive-docker-hashicorp-vault-sgx"><img src="https://raw.githubusercontent.com/docker-library/docs/90d4d43bdfccd5cb21e5fd964d32b0074af0f357/vault/logo.svg?sanitize=true" alt="hashicorp-vault-sgx"></a><br>Always encrypted<br>Hashicorp Vault</p> |                                                                                                                                                                                                                   |                                                                                                                                                                                                                               |                                                                                                                                                                                                                      |                                                                                                                                                                                                               |

## Prerequisites

To utilize the features of Intel Software Guard Extensions (SGXv2), a CPU with SGX support is necessary. The CPU must also support SGX Flexible Launch Control with Measured Boot. It is also highly recommended that the memory size of the host machine should be equal to or greater than 16 GB to ensure that there is enough memory.

In the realm of confidential computing with SGX, a cloud service provider plays a crucial role beyond merely providing the hardware. They are responsible for delivering specific services necessary for the smooth operation of the Data Center Attestation Primitives (DCAP) attestation flow.

The following cloud infrastructures are equipped with SGX-ready capabilities by default:

1. [Microsoft Azure Confidential Cloud](https://azure.microsoft.com/en-us/solutions/confidential-compute/)
2. [OVH Cloud](https://docs.ovh.com/ie/en/dedicated/enable-and-use-intel-sgx/)
3. [Alibaba Cloud](https://www.alibabacloud.com/blog/alibaba-cloud-released-industrys-first-trusted-and-virtualized-instance-with-support-for-sgx-2-0-and-tpm_596821)

Please note that the information may not reflect the latest updates or additions by the cloud providers. It's always advisable to check with the providers directly or refer to their official documentation for the most up-to-date information on their SGX-ready cloud infrastructures. Furthermore, Confidential computing is a rapidly evolving field, and cloud providers consistently enhance their offerings with confidential computing capabilities. If your preferred infrastructure provider is not listed here, please feel free to contact us. We'll be glad to assist you in finding the right solution.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.enclaive.cloud/confidential-cloud/technology-in-depth/intel-sgx/enclaive-development-kit.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
