How to run an existing service on OOD #245
Replies: 5 comments 2 replies
-
The main problem of running existing services should be permissions. The current dec app permission system may not meet the requirements. It is necessary to design a safe and easy-to-use permission system, but this is more complicated. The easiest way is to use the dec app whitelist, and the dec app in the whitelist runs directly with root privileges. |
Beta Was this translation helpful? Give feedback.
-
Gateway in the most initial version, support bdt protocol-based reverse proxy, similar to nginx, but this is relatively primitive, and not integrated into the cyfs-stack internal, so only gateway has this feature, and cyfs-runtime and other places that only use cyfs-stack, there is no way to use this feature directly Therefore, it is very limited. So from the above point of view, consider upgrading the reverse proxy as a basic feature of cyfs-stack, providing a stream-based reverse proxy that can be used directly by the dec, such as a traditional web server, which can be ported to a dec service relatively easily based on this feature So this reverse proxy, can be considered from both the client and service side, what should it look like? Server sideThe server side is considered to have the following features
And process the corresponding requests on this address, here we need to make different distinctions according to tcp and udp protocols
Client sideThe client side is considered to have the following features
Integration with A-LinkAt present, the A-Link protocol is used to open the built-in page of dec, which is still based on For example, in the address bar of cyfs-browser, open the following url
cyfs-stack internally initiates a query request to the target {zone} (consider still get object), and if the req-path is found to correspond to an http reverse proxy, then it directly initiates a connection to the corresponding |
Beta Was this translation helpful? Give feedback.
-
Based on the above design and ideas, the reverse proxy services supported under the cyfs framework should look like the following: |
Beta Was this translation helpful? Give feedback.
-
How about to add a redirect proxy to nginx? We only use
But we should modify the way of accessing the service to distinguish classic HTTP requests and encapsulate them into |
Beta Was this translation helpful? Give feedback.
-
It is possible to cut through the current process of opening A-Links in a different way and see what this new process should look like? Inside cyfs-browser, access the built-in web directory of the dec-service via the following A-Link
Then look at the flow from the dec-service and dec-app webpage perspective respectively. Dec-service sideWhen dec is installed, if there is a local web directory, then app-manager needs to call publish the local web directory during installation, i.e. generate the corresponding file objects and web-dir-id (always is an object-map object), and update the corresponding file objects and web-dir-id (always is an object-map object), and hang the latest cyfs-runtime side
From the above process, if a dec service wants to use Nginx-like mechanism to process some requests dynamically like web2, it's still very troublesome to generate a lot of object and file data, and these data must be recorded to the noc and ndc, tracker of cyfs-stack, so I feel this mode is not suitable for processing dynamic html requests |
Beta Was this translation helpful? Give feedback.
-
Our OOD is positioned as a personal server, so now I'm thinking about a question: I have my own OOD, and in order to make the most of this personal server, I want to run some of my desired services on it, such as the hot
stable diffution
, can these services be run as a dec app? How do I use it? Considering the following questions, please feel free to join the discussion!Beta Was this translation helpful? Give feedback.
All reactions