# Tutorials

Here, we are going to showcase several use cases that have seamlessly integrated enclaive's development kit. The kit aims to ease the enclavation of containers.&#x20;

## Kubernetes

{% content-ref url="/pages/Wn7AngGdMteJuY3tTgwP" %}
[Redis in cK8s](/confidential-cloud/technology-in-depth/intel-sgx/enclaive-development-kit/use-cases/redis.md)
{% endcontent-ref %}

{% content-ref url="/pages/p5652RmL7kXcrs1GgJa5" %}
[MongoDB in cK8s](/confidential-cloud/technology-in-depth/intel-sgx/enclaive-development-kit/use-cases/mongodb-in-ck8s.md)
{% endcontent-ref %}

{% content-ref url="/pages/xeXE5W4C6Xq3WkP5Lq0p" %}
[K8s + HashiCorp Vault on Azure DCsv3](/confidential-cloud/technology-in-depth/intel-sgx/enclaive-development-kit/use-cases/kubernetes.md)
{% endcontent-ref %}

## Docker

<table data-header-hidden><thead><tr><th width="193" align="center"></th><th width="147" align="center"></th><th width="141" align="center"></th><th width="144" align="center"></th><th></th></tr></thead><tbody><tr><td align="center"><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</td><td align="center"><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</td><td align="center"><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</td><td align="center"><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</td><td></td></tr><tr><td align="center"><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</td><td align="center"><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</td><td align="center"><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</td><td align="center"><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</td><td><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</td></tr><tr><td align="center"><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</td><td align="center"><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</td><td align="center"><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</td><td align="center"><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</td><td><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</td></tr><tr><td align="center"><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</td><td align="center"><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</td><td align="center"><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</td><td align="center"><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</td><td></td></tr><tr><td align="center"><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</td><td align="center"></td><td align="center"></td><td align="center"></td><td></td></tr></tbody></table>

## Confidential Apps in Action

Watch how enclaived docker containers are hacked. The demo code can be found in the \`demo\` branch of the corresponding enclaive docker container repository.

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th><th></th><th></th></tr></thead><tbody><tr><td><a href="https://youtu.be/SoKIo0kIg_4"><img src="https://img.youtube.com/vi/SoKIo0kIg_4/0.jpg" alt=""></a><br>Dumping the Redis Memory while in Use (<a href="https://github.com/enclaive/enclaive-docker-redis-sgx/tree/demo">read more</a>)</td><td><a href="https://youtu.be/PI2PosrdrCk"><img src="https://img.youtube.com/vi/PI2PosrdrCk/0.jpg" alt=""></a><br>MariaDB Data-in-Use encryption of SQL queries (<a href="https://github.com/enclaive/enclaive-docker-mariadb-sgx/tree/demo">read more</a>)</td><td><a href="https://www.youtube.com/watch?v=3FCULfBqFN0"><img src="https://img.youtube.com/vi/3FCULfBqFN0/0.jpg" alt=""></a><br>MongoDB Data-in-Use encyption of password insertion (<a href="https://github.com/enclaive/enclaive-docker-mongodb-sgx/tree/demo">read more</a>)</td><td><a href="https://youtu.be/v0CmPF9YzQ4"><img src="https://img.youtube.com/vi/v0CmPF9YzQ4/0.jpg" alt=""></a><br>ArangoDB Data-in-Use Encryption (<a href="https://github.com/enclaive/enclaive-docker-arangodb-sgx/tree/demo">read more</a>)</td></tr><tr><td><a href="https://youtu.be/Q9EGCAQUC4U"><img src="https://img.youtube.com/vi/Q9EGCAQUC4U/0.jpg" alt=""></a><br>NodeJS Express and Protection against Runtime Leakage (<a href="https://github.com/enclaive/enclaive-docker-nodejs-sgx/tree/demo">read more</a>)</td><td><a href="https://youtu.be/RnZjhZinOE8"><img src="https://img.youtube.com/vi/RnZjhZinOE8/0.jpg" alt=""></a><br>Attempt to modify protected Volume/Files (<a href="https://github.com/enclaive/enclaive-docker-cs-sgx/tree/demo">read more</a>)</td><td><a href="https://youtu.be/quzkMBYK-N8"><img src="https://img.youtube.com/vi/quzkMBYK-N8/0.jpg" alt=""></a><br>Write a file into shared encrypted Volume (<a href="https://github.com/enclaive/enclaive-docker-ruby-sgx/tree/demo">read more</a>)</td><td><a href="https://www.youtube.com/watch?v=GCe4HKyq1X0"><img src="https://img.youtube.com/vi/GCe4HKyq1X0/0.jpg" alt=""></a><br>HTTPS server prevents the access to X.509 certificate private key (<a href="https://github.com/enclaive/enclaive-docker-go-sgx/tree/demo">read more</a>)</td></tr></tbody></table>


---

# Agent Instructions: 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:

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

The question should be specific, self-contained, and written in natural language.
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.
