= project structure and technologies used
== Dynamic Structure
[.float-group]
--
[.right]
image::ROOT:swarm-poc.png[float=right]
:hardbreaks:
{empty} +
{empty}
:!hardbreaks:
.From -> To
* [*] monolithic -> networking architecture
* [*] static -> Dynamic
* [*] host based -> Service based
* [*] linear -> agile
--
TIP: You will learn to code, coordinate and orchestrate a swarm of self-acting nodes.
== Dynamic Instaces
[.float-group]
--
[.right]
image::ROOT:docker-images.png[210,260,float=right]
:hardbreaks:
{empty} +
{empty}
:!hardbreaks:
Server instances are *platform agnostic container-based applications.*
To build a large - scale distributed application we take advantage of standardized code deployments using Docker containers.
Docker-based applications can be seamlessly moved from local development machines to production deployments
{empty} +
--
== Dynamic networks - Swarm
[.float-group]
--
[.left]
image::ROOT:gynamic-swarm.png[320,540,float=right]
{empty} +
*From Code to full-blown systems*
* from a single container on your local machine
* to a running cloud native - container-based environment
* in the simplest and most logical format as possible.
:hardbreaks:
{empty} +
{empty}
{empty}
{empty}
{empty}
{empty}
{empty}
{empty}
Services in a dynamic and Scalable Distributed Architecture
{empty}
--
* (1) Opens the info menu
* (2) Run a shell in a running container
* (3) Opens web interface
* (4),(5) Source directory - Directory Maps
image::ROOT:types-of-mounts-bind.png[,250,float=right]
*"Directory Maps"* are the preferred mechanism for persisting data generated by and used by Docker containers. We use here "bind mounts" and they are dependent on the directory structure and OS of the host machine.
WARNING: Your local changes to the files will be overwritten by click on "Download" button. You should always *take a full backup* first (simple copy the directory tree)