# Docker compose

The current docker compose file is maintained in the [GitHub under the "setup" ](https://github.com/stefanwerfling/flyingfish/tree/main/setup)folder for productive use.&#x20;

{% hint style="info" %}
Please do not use the docker compose file from the main folder. As this is used for the development of FlyingFish.
{% endhint %}

### Parts container

FlyingFish is divided into several services, thus into containers. The containers have different rights to the system.

| Container            | Description                                                                                                                                                                               |
| -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| flyingfish\_db       | Contains the MariaDB and is accessible for various containers from FlyingFish in Docker's own network.                                                                                    |
| flyingfish\_influxdb | Contains the Influxdb and is accessible for various containers from FlyingFish in Docker's own network.                                                                                   |
| flyingfish\_redis    | CContains the Redis server, which enables memory event communication between the other containers.                                                                                        |
| flyingfish\_service  | Contains the Nginx and backend with frontend.                                                                                                                                             |
| flyingfish\_himhip   | Contains the service for reading out the host IP and gateway. The task is limited because this container runs with special privileges. The information is sent to the FlyingFish backend. |
| flyingfish\_ssh      | A custom implemented SSH jump server that only accepts port forwarding with L and R.                                                                                                      |
| flyingfish\_ddns     | This container takes care of requests from DynDns-Clients.                                                                                                                                |

### Production template

The compose file should be optimally prepared. For more customization, you can read more below.

{% @github-files/github-code-block url="<https://github.com/stefanwerfling/flyingfish/blob/main/setup/docker-compose.yml>" %}


---

# 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://flying-fish.gitbook.io/flyingfish/index/installation/long-setup/docker-compose.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.
