diff --git a/books/manual/SUMMARY.md b/books/manual/SUMMARY.md index 599393e..518a249 100644 --- a/books/manual/SUMMARY.md +++ b/books/manual/SUMMARY.md @@ -25,6 +25,9 @@ - [CasperLabs](dashboard/solutions/casper.md) - [Discourse](dashboard/solutions/discourse.md) - [Funkwhale](dashboard/solutions/funkwhale.md) + - [Gitea](dashboard/solutions/gitea.md) + - [Jenkins](dashboard/solutions/jenkins.md) + - [Jitsi](dashboard/solutions/jitsi.md) - [Mattermost](dashboard/solutions/mattermost.md) - [Nextcloud](dashboard/solutions/nextcloud.md) - [Node Pilot](dashboard/solutions/nodepilot.md) @@ -33,6 +36,7 @@ - [Static Website](dashboard/solutions/static_website.md) - [Subsquid](dashboard/solutions/subsquid.md) - [Taiga](dashboard/solutions/taiga.md) + - [TFRobot](dashboard/solutions/tfrobot.md) - [Umbrel](dashboard/solutions/umbrel.md) - [WordPress](dashboard/solutions/wordpress.md) - [Your Contracts](dashboard/deploy/your_contracts.md) diff --git a/collections/dashboard/deploy/applications.md b/collections/dashboard/deploy/applications.md index c11778a..d9e57ca 100644 --- a/collections/dashboard/deploy/applications.md +++ b/collections/dashboard/deploy/applications.md @@ -11,14 +11,20 @@ Easily deploy your favourite applications on the ThreeFold grid with a click of - [Algorand](algorand.md) - [CasperLabs](casper.md) - [Discourse](discourse.md) +- [Domains](domains.md) - [Funkwhale](funkwhale.md) +- [Gitea](gitea.md) +- [Jenkins](jenkins.md) +- [Jitsi](jitsi.md) - [Mattermost](mattermost.md) - [Nextcloud](nextcloud.md) - [Node Pilot](nodepilot.md) +- [Nostr](nostr.md) - [Peertube](peertube.md) - [Presearch](presearch.md) - [Static Website](static_website.md) - [Subsquid](subsquid.md) - [Taiga](taiga.md) +- [TFRobot](tfrobot.md) - [Umbrel](umbrel.md) - [WordPress](wordpress.md) \ No newline at end of file diff --git a/collections/dashboard/img/applications_landing.png b/collections/dashboard/img/applications_landing.png index e4117a5..17d3c04 100644 Binary files a/collections/dashboard/img/applications_landing.png and b/collections/dashboard/img/applications_landing.png differ diff --git a/collections/dashboard/solutions/domains.md b/collections/dashboard/solutions/domains.md new file mode 100644 index 0000000..181268f --- /dev/null +++ b/collections/dashboard/solutions/domains.md @@ -0,0 +1,36 @@ +

Domains

+ +

Table of Contents

+ +- [Introduction](#introduction) +- [Prerequisites](#prerequisites) +- [Deployment](#deployment) + +--- + +## Introduction + +The Domains solution allows users to securely expose servers hosted on local machines or VMs to the public internet. Users are required to specify the machine's IP, which can be a Mycelium IP, an Yggdrasil IP, or a public IP (IPv4 or IPv6). + +## Prerequisites + +- Make sure you have a [wallet](wallet_connector.md) +- From the sidebar click on **Applications** +- Click on **Domains** + +## Deployment + +![ ](./img/domains.png) + +- Enter a subdomain to be added to your domain +- The `Custom Domain` flag allows the user to use a custom domain +- Choose a gateway node to deploy your static website +- Enter the port used to access the machine +- Enter the machine's IP + - It can be a Mycelium IP, an Yggdrasil IP, or a public IP (IPv4 or IPv6) + +Once this is done, you can see a list of all of your deployed instances: + +![ ](./img/domains_list.png) + +Click on the button **Visit** under **Actions** to go to your exposed website! diff --git a/collections/dashboard/solutions/gitea.md b/collections/dashboard/solutions/gitea.md new file mode 100644 index 0000000..3e5a166 --- /dev/null +++ b/collections/dashboard/solutions/gitea.md @@ -0,0 +1,81 @@ +

Gitea

+ +

Table of Contents

+ +- [Introduction](#introduction) +- [Prerequisites](#prerequisites) +- [Deployment](#deployment) +- [Setting Up Gitea](#setting-up-gitea) + +*** + +## Introduction + +[Gitea](https://about.gitea.com/) is a forge software package for hosting software development version control using Git as well as other collaborative features like bug tracking, code review, continuous integration, kanban boards, tickets, and wikis. + +## Prerequisites + +- Make sure you have a [wallet](wallet_connector.md) +- From the sidebar click on **Applications** +- Click on **Gitea** + +## Deployment + +![](./img/gitea_config.png) + +![](./img/gitea_mail_server.png) + +- Enter a name for your deployment or keep the default name +- Select a capacity package: + - **Small**: {cpu: 1, memory: 2, diskSize: 25 } + - **Medium**: {cpu: 2, memory: 4, diskSize: 50 } + - **Large**: {cpu: 4, memory: 16, diskSize: 100 } + - Or choose a **Custom** plan +- Choose the network + - `Public IPv4` flag gives the virtual machine a Public IPv4 + - `Public IPv6` flag gives the virtual machine a Public IPv6 + - `Planetary Network` flag gives the virtual machine an Yggdrasil address + - `Mycelium` flag gives the virtual machine a Mycelium address + +- `Dedicated` flag to retrieve only dedicated nodes +- `Certified` flag to retrieve only certified nodes +- Choose the node + - Automated + - Choose the location of the node + - `Region` + - `Country` + - `Farm Name` + - Click on `Load Nodes` + - Click on the node you want to deploy on + - Manual selection + - Select a specific node ID +- Choose a domain + - Use a custom domain by enabling `Custom Domain` + - Choose a gateway domain for your instance +- Set the `Mail Server` + - In the tab `Mail Server` you can adjust the parameters or leave the default parameters + - The `Admin Email` by default is the email you used when logging into the Dashboard + - The `Admin Password` is generated automatically but you can modify it + - By default the SMTP server used for the `Hostname` is `smtp.gmail.com` with its associated port `587` + - Enable TLS by clicking on the `TLS` button +- Click `Deploy` + +After deployment, you can see a list of all your deployed instances. + +To access the Gitea instance, click on the `Actions` button called `Visit`. + +![](./img/gitea_instances.png) + +## Setting Up Gitea + +Once you've accessed the Gitea instance, you can adjust the `Initial Configuration` if needed. + +![](./img/gitea_initial_configuration.png) + +Once you're ready, click on `Install Gitea`. + +![](./img/gitea_install.png) + +Once the configuration is completed, you can register to the Gitea instance and start using it. + +![](./img/gitea_register.png) \ No newline at end of file diff --git a/collections/dashboard/solutions/img/gitea_config.png b/collections/dashboard/solutions/img/gitea_config.png new file mode 100644 index 0000000..ccf263d Binary files /dev/null and b/collections/dashboard/solutions/img/gitea_config.png differ diff --git a/collections/dashboard/solutions/img/gitea_initial_configuration.png b/collections/dashboard/solutions/img/gitea_initial_configuration.png new file mode 100644 index 0000000..9849fa2 Binary files /dev/null and b/collections/dashboard/solutions/img/gitea_initial_configuration.png differ diff --git a/collections/dashboard/solutions/img/gitea_install.png b/collections/dashboard/solutions/img/gitea_install.png new file mode 100644 index 0000000..d129e25 Binary files /dev/null and b/collections/dashboard/solutions/img/gitea_install.png differ diff --git a/collections/dashboard/solutions/img/gitea_instances.png b/collections/dashboard/solutions/img/gitea_instances.png new file mode 100644 index 0000000..1b91d6a Binary files /dev/null and b/collections/dashboard/solutions/img/gitea_instances.png differ diff --git a/collections/dashboard/solutions/img/gitea_mail_server.png b/collections/dashboard/solutions/img/gitea_mail_server.png new file mode 100644 index 0000000..53485c9 Binary files /dev/null and b/collections/dashboard/solutions/img/gitea_mail_server.png differ diff --git a/collections/dashboard/solutions/img/gitea_register.png b/collections/dashboard/solutions/img/gitea_register.png new file mode 100644 index 0000000..1f314b9 Binary files /dev/null and b/collections/dashboard/solutions/img/gitea_register.png differ diff --git a/collections/dashboard/solutions/img/solutions_jenkins1.png b/collections/dashboard/solutions/img/solutions_jenkins1.png new file mode 100644 index 0000000..4ca7cf8 Binary files /dev/null and b/collections/dashboard/solutions/img/solutions_jenkins1.png differ diff --git a/collections/dashboard/solutions/img/solutions_jitsi.png b/collections/dashboard/solutions/img/solutions_jitsi.png new file mode 100644 index 0000000..e76e12a Binary files /dev/null and b/collections/dashboard/solutions/img/solutions_jitsi.png differ diff --git a/collections/dashboard/solutions/img/solutions_jitsi_homepage.png b/collections/dashboard/solutions/img/solutions_jitsi_homepage.png new file mode 100644 index 0000000..4166780 Binary files /dev/null and b/collections/dashboard/solutions/img/solutions_jitsi_homepage.png differ diff --git a/collections/dashboard/solutions/img/solutions_jitsi_instances.png b/collections/dashboard/solutions/img/solutions_jitsi_instances.png new file mode 100644 index 0000000..c98a840 Binary files /dev/null and b/collections/dashboard/solutions/img/solutions_jitsi_instances.png differ diff --git a/collections/dashboard/solutions/img/solutions_tfrobot.png b/collections/dashboard/solutions/img/solutions_tfrobot.png new file mode 100644 index 0000000..ab0110b Binary files /dev/null and b/collections/dashboard/solutions/img/solutions_tfrobot.png differ diff --git a/collections/dashboard/solutions/img/tfrobot1.png b/collections/dashboard/solutions/img/tfrobot1.png new file mode 100644 index 0000000..f3c800f Binary files /dev/null and b/collections/dashboard/solutions/img/tfrobot1.png differ diff --git a/collections/dashboard/solutions/jenkins.md b/collections/dashboard/solutions/jenkins.md new file mode 100644 index 0000000..928f03e --- /dev/null +++ b/collections/dashboard/solutions/jenkins.md @@ -0,0 +1,65 @@ +

Jenkins

+ +

Table of Contents

+ +- [Introduction](#introduction) +- [Prerequisites](#prerequisites) +- [Deployment](#deployment) +- [Troubleshooting](#troubleshooting) + +*** + +## Introduction + +[Jenkins](https://www.jenkins.io/) is a popular open-source automation server that enables developers to build, test, and deploy their applications continuously. + +## Prerequisites + +- Make sure you have a [wallet](wallet_connector.md) +- From the sidebar click on **Applications** +- Click on **Jenkins** + +## Deployment + +__Process__ : + +![ ](./img/solutions_jenkins1.png) + +- Enter an Application Name. It's used in generating a unique subdomain on one of the gateways on the network alongside your twin ID. Ex. ***fw100myfunk*.gent02.dev.grid.tf** + +- Enter administrator information including **Username**, and **Password**. This admin user will have full permission on the deployed instance. + +- Select a capacity package: + - **Small**: {cpu: 1, memory: 2, diskSize: 50 } + - **Medium**: {cpu: 2, memory: 4, diskSize: 100 } + - **Large**: {cpu: 4, memory: 16, diskSize: 250 } + - Or choose a **Custom** plan +- Choose the network + - `Public IPv4` flag gives the virtual machine a Public IPv4 + - `Public IPv6` flag gives the virtual machine a Public IPv6 + - `Planetary Network` to connect the Virtual Machine to Planetary network + - `Mycelium` flag gives the virtual machine a Mycelium address +- `Dedicated` flag to retrieve only dedeicated nodes +- `Certified` flag to retrieve only certified nodes +- Choose the location of the node + - `Region` + - `Country` + - `Farm Name` + +- Choose the node to deploy on +> Or you can select a specific node with manual selection. +- `Custom Domain` flag lets the user to use a custom domain +- Choose a gateway node to deploy your Jenkins instance on. + + +After that is done you can see a list of all of your deployed instances + +![ ](./img/jenkins2.png) + +Click on ***Visit*** to go to the homepage of your Jenkins instance! + +![ ](./img/jenkins3.png) + +## Troubleshooting + +If you get a `Bad Gateway` while connecting to the website, you might simply need to wait for the deployment to complete. \ No newline at end of file diff --git a/collections/dashboard/solutions/jitsi.md b/collections/dashboard/solutions/jitsi.md new file mode 100644 index 0000000..46b9e9b --- /dev/null +++ b/collections/dashboard/solutions/jitsi.md @@ -0,0 +1,63 @@ +

Jitsi

+ +

Table of Contents

+ +- [Introduction](#introduction) +- [Prerequisites](#prerequisites) +- [Deployment](#deployment) +- [Troubleshooting](#troubleshooting) + +--- + +## Introduction + +Jitsi Meet is a set of Open Source projects which empower users to use and deploy video conferencing platforms with state-of-the-art video quality and features. For more details, check [Jitsi documentation](https://jitsi.github.io/handbook/docs/intro/). + +## Prerequisites + +- Make sure you have a [wallet](wallet_connector.md) +- From the sidebar click on **Applications** +- Click on **Jitsi** + +## Deployment + +**Process** : + +![ ](./img/solutions_jitsi.png) + +- Enter an Application Name. It's used in generating a unique subdomain on one of the gateways on the network alongside your twin ID. Ex. **_fw100myfunk_.gent02.dev.grid.tf** + +- Select a capacity package: + - **Small**: {cpu: 1, memory: 2, diskSize: 50 } + - **Medium**: {cpu: 2, memory: 4, diskSize: 100 } + - **Large**: {cpu: 4, memory: 16, diskSize: 250 } + - Or choose a **Custom** plan +- Choose the network + - `Public IPv4` flag gives the virtual machine a Public IPv4 + - `Public IPv6` flag gives the virtual machine a Public IPv6 + - `Planetary Network` flag gives the virtual machine an Yggdrasil address + - `Mycelium` flag gives the virtual machine a Mycelium address +- `Dedicated` flag to retrieve only dedicated nodes +- `Certified` flag to retrieve only certified nodes +- Choose the location of the node + + - `Region` + - `Country` + - `Farm Name` + +- Choose the node to deploy on + > Or you can select a specific node with manual selection. +- `Custom Domain` flag lets the user to use a custom domain +- Choose a gateway node to deploy your Jitsi instance on. + +After that is done you can see a list of all of your deployed instances + +![ ](./img/solutions_jitsi_instances.png) + +Click on **_Visit_** to go to the homepage of your Jitsi instance! + +![ ](./img/solutions_jitsi_homepage.png) + +## Troubleshooting + +If you get a `Bad Gateway` while connecting to the website, you might simply need to wait for the deployment to complete. diff --git a/collections/dashboard/solutions/tfrobot.md b/collections/dashboard/solutions/tfrobot.md new file mode 100644 index 0000000..601b37c --- /dev/null +++ b/collections/dashboard/solutions/tfrobot.md @@ -0,0 +1,61 @@ +

TFRobot

+ +

Table of Contents

+ +- [Introduction](#introduction) +- [Features](#features) +- [Prerequisites](#prerequisites) +- [Deployment](#deployment) +- [Deployed Instances Table](#deployed-instances-table) + +*** + +## Introduction + +[TFRobot](https://github.com/threefoldtech/tfgrid-sdk-go/blob/development/tfrobot/README.md) is tool designed to automate mass deployment of groups of VMs on the ThreeFold Grid, with support of multiple retries for failed deployments. + +## Features + +- **Mass Deployment:** Deploy groups of VMs on the grid simultaneously. +- **Mass Cancellation:** Cancel simultaneously all VMs on the grid defined in the configuration file. +- **Load Deployments:** Load simultaneously groups of VMs deployed with TFRobot. +- **Customizable Configurations:** Define node groups, VMs groups and other configurations through YAML or JSON files. + +## Prerequisites + +- Make sure you have a [wallet](wallet_connector.md) +- From the sidebar click on **Applications** +- Click on **TFRobot** + +## Deployment + +![ ](./img/solutions_tfrobot.png) + +- Enter an Application Name. + +- Select a capacity package: + - **Small**: {cpu: 1, memory: 2, diskSize: 25 } + - **Medium**: {cpu: 2, memory: 4, diskSize: 50 } + - **Large**: {cpu: 4, memory: 16, diskSize: 100 } + - Or choose a **Custom** plan +- Choose the network + - `Public IPv4` flag gives the virtual machine a Public IPv4 + - `Public IPv6` flag gives the virtual machine a Public IPv6 + - `Planetary Network` to connect the Virtual Machine to Planetary network + - `Mycelium` to enable Mycelium on the virtual machine + - `Wireguard Access` to add a wireguard access to the Virtual Machine +- `Dedicated` flag to retrieve only dedeicated nodes +- `Certified` flag to retrieve only certified nodes +- Choose the location of the node + - `Region` + - `Country` + - `Farm Name` +- Click on `Load Nodes` +- Select the node you want to deploy on +- Click `Deploy` + +## Deployed Instances Table + +At all time, you can see a list of all of your deployed instances: + +![ ](./img/tfrobot1.png) \ No newline at end of file diff --git a/collections/farmers/farmerbot/farmerbot_information.md b/collections/farmers/farmerbot/farmerbot_information.md index ac4b80b..5bcbe15 100644 --- a/collections/farmers/farmerbot/farmerbot_information.md +++ b/collections/farmers/farmerbot/farmerbot_information.md @@ -74,13 +74,19 @@ included_nodes: [optional, if no nodes are added then the farmerbot will include - "" excluded_nodes: - "" +priority_nodes: + - "" never_shutdown_nodes: - "" power: periodic_wake_up_start: "" - wake_up_threshold: "" periodic_wake_up_limit: "" overprovision_cpu: "" + wake_up_threshold: + cru: "" + mru: "" + sru: "" + hru: "" ``` ## Supported Commands and Flags