mirror of
https://github.com/Start9Labs/documentation.git
synced 2026-03-26 10:21:53 +00:00
Finish embassy section
This commit is contained in:
@@ -87,43 +87,40 @@ A session is simply a logged-in connection to your Embassy. You can view your :
|
||||
|
||||
Service Container
|
||||
-----------------
|
||||
Each service is compartmentalilzed into its own "container," at this time, this normally means a `Docker <https://docker.com>`_ container. There are several reasons for this, including security, ease of use, and maintenance.
|
||||
Each service is compartmentalized into its own "container," at this time, this normally means a `Docker <https://docker.com>`_ container. There are several reasons for this, including security, ease of use, and maintenance.
|
||||
|
||||
.. _service-dependencies:
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
Some services have dependencies on other services. A service may even require its dependency to be *configured* in a particular way.
|
||||
A software dependency is a code library or package that is reused in a new piece of software. The benefit of software dependencies is that they allow developers to more quickly deliver software by building on previous work. Software may even require its dependency to be configured in a particular way.
|
||||
|
||||
Traditionally, managing dependencies was a massive headache and a huge barrier to running a personal server. But no more! The Embassy's revolutionary dependency management system makes the process transparent and simple.
|
||||
Traditionally, managing dependencies has been a massive headache and has served as a huge barrier to running a personal server. But no more! The EmbassyOS dependency management system makes the process transparent and simple.
|
||||
|
||||
If a service has one or more dependencies, or a dependency needs to be configured in a particular way, your Embassy will inform you and offer solutions.
|
||||
If a service has one or more dependencies, or a dependency needs to be configured in a particular way, your Embassy device will inform you and provide an automated solution, giving details of what will be done so you can make an informed decision before taking action.
|
||||
|
||||
Sometimes, a dependency can be satisfied in multiple ways. For example, Lightning has a dependency on Bitcoin. But that does not necessarily mean you need to have Bitcoin installed on your Embassy. You could just as easily configure Lightning to use another Bitcoin node located somewhere else!
|
||||
Sometimes, a dependency can be satisfied in multiple ways. For example, Lightning has a dependency on Bitcoin. However, this does not necessarily mean you need to have Bitcoin installed on your Embassy. You could just as easily configure Lightning to use another Bitcoin node located somewhere else!
|
||||
|
||||
.. _web-ui:
|
||||
|
||||
Web User Interface (UI)
|
||||
-----------------------
|
||||
A User Interface, or UI, is as the name suggests, the way in which the user interacts with some software, typically in our context it will be a graphical interface (GUI). A WebUI is basically a website that is served (often by your Embassy) specifically for a user to issue commands or view data. A great example of this is EmbassyOS itself, which serves a WebUI for the user to add/remove services, make configurations, etc. This is your main point of contact with EOS.
|
||||
A User Interface (UI) is, as the name suggests, the way in which the user interacts with some software. Typically this is achieved through a graphical interface (GUI). A WebUI is a website that is served specifically for a user to issue commands or view data. A great example of this is EmbassyOS itself, which serves a WebUI for the user to add/remove services, make configurations, etc. This is your main point of contact with EOS.
|
||||
|
||||
.. _interfaces:
|
||||
|
||||
Service Interfaces
|
||||
------------------
|
||||
In EmbassyOS versions 0.2.x, each installed service received its own Tor hidden service URL. For some services, such as File Browser, the URL represented a website that could be visited in the browser; for other services, such as Bitcoin, the URL had to be input into a native client wallet such as Fully Noded or Specter.
|
||||
In EmbassyOS, each installed service creates its own Tor Hidden Service URL. For some services, such as File Browser, the URL represents a website that can be visited in the browser; for other services, such as Bitcoin, the URL has to be input into a native client wallet such as Fully Noded, Sparrow, or Specter.
|
||||
|
||||
Certain services, such as Bitcoin, actually have multiple interfaces. Bitcoin has an RPC interface, a P2P interface, and could potentially even have a graphical interface, such as a dashboard displaying important node information. Using the same URL for these various interfaces is not only confusing, it could potentially pose a security vulnerability. For example, a user may want to share their P2P interface address with someone for peering but not want to give out their UI address, which is for private use only.
|
||||
Certain services, such as Bitcoin, actually have multiple interfaces. Bitcoin has an RPC interface, a P2P interface, and could potentially even have a graphical interface, such as a dashboard displaying important node information. Using the same URL for these various interfaces is not only confusing, but it could also potentially pose a security vulnerability. For example, a user may want to share their P2P interface address with someone for peering, but would not want to give out their UI address, which is for private use only.
|
||||
|
||||
As such, EmbassyOS 0.3.0 permits services to have multiple interfaces, each receiving its own Tor address and/or LAN address. Users can then view and access all interfaces for a given service inside the "Interfaces" section of the service dashboard.
|
||||
|
||||
|
||||
.. _health-checks:
|
||||
|
||||
Health Checks
|
||||
-------------
|
||||
One of the most critical duties of a sysadmin or devops engineer is to build systems to monitor health. For example, a simple health check that monitors the availability of an LND node could mean the difference between that node having a poor reputation or a great one. Sometimes, it is not obvious when a service is unhealthy, especially since “health” is a subjective term depending on the subject. For example, is your Bitcoin node “healthy” if it is not fully synced? Is it healthy if the user interface is unreachable but everything else is working ok?
|
||||
|
||||
In EmbassyOS 0.3.0, package developers define what constitutes health and implement health checks according to subjective criteria that are then displayed to the user in easily digestible messages, complete with icons and colors. Even better, health checks are completely arbitrary and turing complete, meaning they can include anything, including config options and internal or external dependencies! For example, a Lightning wallet package developer could say “this service is only healthy if (1) it is fully synced, (2) Bitcoin is fully synced, (3) LND is fully synced, and (4) if and only if the user has opted for real-time pricing from a third party website, that third party website must be reachable.” Enormous power.
|
||||
|
||||
One of the most critical duties of a sysadmin or devops engineer is to build mechanisms to monitor the health of systems. For example, a simple health check that monitors the availability of an LND node could mean the difference between that node having a poor reputation or a great one. Sometimes, it is not obvious when a service is unhealthy, especially since “health” is a subjective term depending on the subject. For example, is your Bitcoin node “healthy” if it is not fully synced? Is it healthy if the user interface is unreachable but everything else is working properly?
|
||||
|
||||
In EmbassyOS, package developers define what constitutes health and implement health checks according to subjective criteria. These health checks are then displayed to the user in easily digestible messages, complete with icons and colors. Even better, health checks are completely arbitrary and turing complete, meaning they can include anything, including config options and internal or external dependencies! For example, a Lightning wallet package developer could say “this service is only healthy if (1) it is fully synced, (2) Bitcoin is fully synced, (3) LND is fully synced, and (4) if and only if the user has opted for real-time pricing from a third party website, that third party website must be reachable.” Enormous power.
|
||||
|
||||
@@ -25,9 +25,7 @@ Open Source ideas explained in `Lego <https://www.youtube.com/watch?v=a8fHgx9mE5
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
A software dependency is a code library or package that is reused in a new piece of software. The benefit of software dependencies is that they allow developers to more quickly deliver software by building on previous work.
|
||||
|
||||
Software may even require its dependency to be *configured* in a particular way.
|
||||
A software dependency is a code library or package that is reused in a new piece of software. The benefit of software dependencies is that they allow developers to more quickly deliver software by building on previous work. Software may even require its dependency to be configured in a particular way.
|
||||
|
||||
Traditionally, managing dependencies has been a massive headache and has served as a huge barrier to running a personal server. But no more! The EmbassyOS dependency management system makes the process simple and accesible.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user