= Swarmlab Hybrid!
Apostolos rootApostolos@swarmlab.io
// Metadata:
:description: Intro and Install
:keywords: ubuntu install
:data-uri:
:toc: right
:toc-title: Table of contents
:toclevels: 4
:source-highlighter: highlight
:icons: font
:sectnums: 


====
{empty} +
[.right]
.Build once, Deploy anywhere!
image:./images/hybrid.png[300,300,role="related thumb right"] 

Swarmlab Hybrid provides a *Modern Application Architecture*

* Distributed System
* Multiple machines
* Each service is a process
* Containerized services in Lightweight containers
* Auto deploy/delivery of services
====

[TIP]
====
.WireGuard - fast and modern VPN tunnel
*All running  in a isolated Network Stack with High efficiency and security*
====


== Start/Stop Agent

=== Start Agent
* Navigate to the dir you have installed the agent
** run ./start.sh

=== Stop Agent
* Navigate to the dir you have installed the agent
** run ./stop.sh


== Config

* Use the "Profile->Settings” menu on swarmlab-agent client to configure a hybrid agent
** click on "Load Settings" 1st
** add also a zone for your agent


== Deploy

=== Private/Local


[.float-group]
--
[.left]

video::507040807[vimeo,width=640,start=0,end=1:10,title=.intro swarmlab 0 - 1:10,lang=us]
[.right]
image:./images/swarmlab-network.png[300,300,role="related thumb right"] 
--

video::507040807[vimeo,width=640,start=1:10,end=2:20,title=.intro hybrid 1:10 - 2:20,lang=us]

video::507040807[vimeo,width=640,start=2:20,end=4:15,title=.intro agent 2:20 - 4:15,lang=us]

video::507040807[vimeo,width=640,start=4:15,end=7:25,title=.bootstrap image 4:15 - 7:25,lang=us]



=== Hybrid

* deploy        0:20    - 11:17 
** deploy field description (image)        1:03    - 1:30
** deploy field description (stack)        1:30    - 3:10
** deploy field description (network)      3:10    - 5:35
** deploy field description (Limits)       5:35    - 6:17
** deploy field description (Port Expose)  6:17    - 7:20
** deploy field description (Readme URL)   7:20    - 8:32

video::507090167[vimeo,width=640,start=0,end=11:17,title=.Deploy,lang=us]

== Join

* join        11:17    -  17:41

video::507090167[vimeo,width=640,start=11:17,end=17:41,title=.Join,lang=us]


== Connect to Container

video::507040807[vimeo,width=640,start=725,end=12:20,title=.Connect to container (Host->container) 7:25 - 12:20,lang=us]

video::507040807[vimeo,width=640,start=12:20,end=13:50,title=.Connect to container (Container->container) 12:20 - 13:50,lang=us]

video::507040807[vimeo,width=640,start=13:50,end=7:15,title=.Mount DIR container 13:50 - 7:15,lang=us]


