You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
zeus 1ab8aa1746 debug ok 1 build преди 1 ден
dist debug ok 1 build преди 1 ден
docs readme преди 1 месец
files admin преди 1 месец
hybrid add hybrid ssh преди 1 година
install stats преди 11 месеца
keys client server ok преди 1 година
nginx changes преди 1 година
public add img преди 10 месеца
src debug ok 1 преди 1 ден
src-local debug 3 преди 1 ден
test changes преди 1 година
.gitignore community menou 1 преди 2 дни
Dockerfile changes преди 1 година
Dockerfile.backup changes преди 1 година
Dockerfile.build client server ok преди 1 година
LICENSE Initial commit преди 1 година
README.md readme преди 2 дни
down.sh bash update преди 11 месеца
ecosystem.config.js changes преди 1 година
ecosystem.config.js.backup changes преди 1 година
install.sh add container stop преди 1 месец
package-lock.json stats преди 2 седмици
package.json stats преди 2 седмици
restart check sudo преди 10 месеца
restart.sh bash update преди 11 месеца
run.yml debug 3 преди 1 ден
run.yml.backup changes преди 1 година
run.yml.sh debug 2 преди 1 ден
start check sudo преди 10 месеца
start.sh check ports преди 2 месеца
status.sh bash update преди 11 месеца
stop check sudo преди 10 месеца
stop.sh install преди 12 месеца
update-agent.sh add преди 11 месеца

README.md

Swarmlab Hybrid

Welcome to Swarmlab.io

On demand Labrooms
Ready-to-Use Virtual Labs one click away.

Table of contents

  1. Features
  2. System requirements
  3. Prerequisites
  4. Installation
  5. More info

An open source work/study-from-home application.

Swarmlab provides you with all the required tools, tools to teach work or try out demos in a completely virtual environment.

Swarmlab is a collection of services that aims to:

  • provide teachers and professors with online remote tools to do their lessons

  • give students the opportunity to study real life examples in their chosen area of expertise

  • allow developers to fully test and debug their applications and provide POC’s

Swarmlab, up and running since 2020, is already used for teaching purposes in a university and has proven itself as a powerful tool in the post covid remote-based situation.

Source code is available at https://git.swarmlab.io:3000 under the AGPL licence.

Ready to run out-of-the-box

As of now the services provided by swarmlab are:

Labrooms(virtual classrooms in the form of model applications to be tweaked at will)

  • linux → base linux system – designed for use as a base to further develop your app

  • MPI → Instances of Ubuntu Linux with MPICH — portable implementation of Message Passing Interface (MPI) standard. Designed for MPI program development and deployment.

  • Node.js

  • sec → a basic linux-based os with security tools – designed as a template for apps

Storage to automatically create a cluster of databases.

Proof Of Concept (POC) options

  • datacollector → using provided services a fully developed application may collect data from a swarm and use it for further analysis

Microservices

  • Jupyter

  • numpy

  • scipy

  • nodejs

  • nginx

  • haproxy

  • gns3

  • wireshark

  • snmpsim

  • xelatexthesis

  • ansible

  • etherpad

  • codeserver (vscode)

  • redisserver

  • mongoserver

  • mongoclient (GUI)

      to be continued…
    

System requirements

Before you create and configure a hybrid deployment using the swarmlab-agent client, your Local Machines need to meet certain requirements.

If you don't meet those requirements, you won't be able to complete the steps within the swarmlab-agent client and you won't be able to configure a hybrid deployment between your Local Enviroment and Swarmlab Online Enviroment.

  • A Linux Server (Virtual or Physical)
  • You must have super user privileges (root/sudo)
  • Docker Engine- Community version 18 or later is required.
  • Docker Engine is supported on x86_64 (or amd64), armhf, and arm64 architectures.
  • RAM
  • Absolute minimum to run the daemon and some very light containers - 512MB
  • Minimum for “comfortable” usage – 2GB
  • CPU
  • Minimum: 2
  • Recommended 4+
  • Disk Space
  • 10 GB for internal requirements.
  • The amount of additional disk space soloemnly depends on you intended use.

⚠️ Since Docker uses hypervisor the host NEEDS TO HAVE VIRTUALIZATION ENABLED!

Prerequisites

  • node version >15

    curl -sL https://deb.nodesource.com/setup_15.x | sudo -E bash -
    sudo apt-get install -y nodejs
    
  • docker

    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
    sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
    sudo apt update
    sudo apt install -y docker-ce
    sudo usermod -aG docker [USERNAME] # Please replace [USERNAME] with the user you want to run docker on
    

ℹ️ for kali specifically please visit the following link to install docker.

https://linuxhint.com/install_docker_kali_linux/

  • docker-compose

    sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    sudo chmod +x /usr/local/bin/docker-compose
    sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
    
  • pm2

    sudo npm install -g pm2
    
  • wireguard

    sudo apt install wireguard jq
    

Installation

for *nix

  • Clone the repo

    git clone --recurse-submodules https://git.swarmlab.io:3000/zeus/swarmlab-hybrid.git
    
  • Install it!

    cd swarmlab-hybrid
    ./install.sh  <-- run it without root privileges
    
  • Open URL http://localhost:3088 in browser

for Windows

http://docs.swarmlab.io/SwarmLab-HowTos/swarmlab/docs/swarmlab/docs/install/install-docker.html#windows-10-with-wsl-version2-enabled

if you wish to keep the environment contained

And instructions on how to use them here.

ℹ️ Default password: swarmlab

PLEASE CHANGE PASSWORD IMEDIATELLY AFTER FIRST LAUNCH!!!

More Info

You can find our docs in

http://docs.swarmlab.io/SwarmLab-HowTos/swarmlab/docs/swarmlab/docs/index.html