diff --git a/Docs/index.html b/Docs/index.html index bf38e97..27889d0 100644 --- a/Docs/index.html +++ b/Docs/index.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
- ++// Do ensure that the docker command does not need sudo to run sudo chmod 666 /var/run/docker.sock@@ -254,7 +254,7 @@ To set up the internal dependencies and build the entire go code into a single binary -+make@@ -267,7 +267,7 @@ To set up P2PRC on Windows, simply run this batch file. Make sure you are not in admin mode when running this. -+.\install.bat@@ -278,7 +278,7 @@ are not in admin mode when running this.2.2.4. Add appropriate paths to
.bashrc-+export P2PRC=/<PATH>/p2p-rendering-computation export PATH=/<PATH>/p2p-rendering-computation:${PATH}@@ -288,7 +288,7 @@ export PATH=/<PATH>/p2p-rendering-computation:${PATH}2.2.5. Test if binary works
-@@ -296,7 +296,7 @@ p2prc --help+p2prc --help
- Output:
-+NAME: p2p-rendering-computation - p2p cli application to create and access VMs in other servers @@ -359,7 +359,7 @@ GLOBAL OPTIONS:@@ -403,7 +403,7 @@ p2prc --rm=<server ip address> --id=<docker container id>3.0.1. Start as a server
-@@ -368,7 +368,7 @@ p2prc -s+p2prc -s@@ -394,7 +394,7 @@ p2prc --touch=<server ip address> -p <number of ports> --gpu The docker id is present in the output where you create a container -3.0.2. View server Specification
-@@ -381,7 +381,7 @@ p2prc --specs=<ip address> use the+p2prc --specs=<ip address>--gpuif you know the other machine has a gpu. -+p2prc --touch=<server ip address> -p <number of ports> --gpu+p2prc --rm=<server ip address> --id=<docker container id>3.0.5. Adding servers to ip table
-@@ -412,7 +412,7 @@ p2prc --as=<server ip address you want to add>+p2prc --as=<server ip address you want to add>3.0.6. Update ip table
-@@ -421,7 +421,7 @@ p2prc --us+p2prc --us3.0.7. List Servers
-@@ -430,7 +430,7 @@ p2prc --ls+p2prc --ls3.0.8. View Network interfaces
-@@ -439,7 +439,7 @@ p2prc --ni+p2prc --ni3.0.9. Viewing Containers created Client side
-@@ -448,7 +448,7 @@ p2prc --tc+p2prc --tc3.0.10. Running plugin
-@@ -457,7 +457,7 @@ p2prc --plugin <plugin name> --id <container id or group id>+p2prc --plugin <plugin name> --id <container id or group id>3.0.11. Create group
-@@ -466,7 +466,7 @@ p2prc --cgroup+p2prc --cgroup3.0.12. Add container to group
-@@ -475,7 +475,7 @@ p2prc --group <group id> --id <container id>+p2prc --group <group id> --id <container id>3.0.13. View groups
-@@ -484,7 +484,7 @@ p2prc --groups+p2prc --groups3.0.14. View specific group
-@@ -493,7 +493,7 @@ p2prc --group <group id>+p2prc --group <group id>3.0.15. Delete container from group
-@@ -502,7 +502,7 @@ p2prc --rmcgroup --group <group id> --id <container id>+p2prc --rmcgroup --group <group id> --id <container id>3.0.16. Delete entire group
-@@ -511,7 +511,7 @@ p2prc --rmgroup <group id>+p2prc --rmgroup <group id>3.0.17. Pulling plugin from a remote repo
-@@ -520,7 +520,7 @@ p2prc --pp <repo link>+p2prc --pp <repo link>3.0.18. Deleting plugin from the plugin directory
-@@ -529,29 +529,29 @@ p2prc --rp <plugin name>+p2prc --rp <plugin name>-3.0.19. Added custom metadata about the current node
-+p2prc --amd "custom metadata"-3.0.20. MapPort and link to domain name
++3.0.20. MapPort and link to domain name
Allows to expose remote ports from a machine in the P2P network.
-+p2prc --mp <port no to map> --dn <domain name to link Mapped port against>-
- MapPort in remote machine
+- MapPort in remote machine
This is to ensure ports on remote machines on the P2PRC can be easily opened.
-+p2prc --mp <port no to map> --dn <domain name to link Mapped port against> --ra <remote server address>@@ -574,7 +574,7 @@ servers with optimal performance, enhancing their overall network experience. -+
![]()
Figure 1: UML diagram of P2P module
@@ -675,7 +675,7 @@ from the TURN server. The flow below describes the workflow.- Call
-/FRPPort+http://<turn server ip>:<server port no>/FRPport@@ -769,7 +769,7 @@ p2prc.h p2prc.so Below are a sample set of commands to open the bindings implementation. -+# run cd Bindings/ # list files @@ -863,7 +863,7 @@ that convert a go object to JSON string initially and converts it to- A Pseudo code to refer to the common function implementation shape could be represented as:
-+func <Function name> (output *C.char) { <response>,<error> := <P2PRC function name>(<parameters if needed>) if <error> != nil { @@ -882,8 +882,8 @@ func <Function name> (output *C.char) {5.3. Current languages supported
--5.3.1. Python
++-5.3.1. Python
@@ -921,8 +921,8 @@ called from other programming languages.
-5.3.2. Haskell
++5.3.2. Haskell
P2PRC officially supports Haskell bindings and will further support @@ -1040,7 +1040,7 @@ from the TURN server. The flow below describes the workflow.
- Call
-/FRPPort+http://<turn server ip>:<server port no>/FRPport@@ -1075,21 +1075,36 @@ func main() { --10. Blog posts
++10. Blog posts
--10.1. Self host within 5 minutes any program
++10.1. Self host within 5 minutes any program
+-+
+ + +- Author: Akilan Selvacoumar
+- Date: 28-01-2025
++
+ + +- Video tutorial:
+This is a fun expirement for anyone to try to quickly run a server and quickly do a map port and domain name mapping in a single command.
-10.1.1. 1. Find a program you want to run
++10.1.1. 1. Find a program you want to run
Let's try to setup a really easy program (Let's do with Linkwarden @@ -1099,10 +1114,10 @@ compose installed on your local machine.
-
- Let's run Linkwarden using docker compose and P2PRC
+- Let's run Linkwarden using docker compose and P2PRC
@@ -1190,8 +1206,8 @@ Your done now just head to ldt.akilan.io (Or your domain name you added) -
-Installation instrutions: +Installation instructions:
mkdir linkwarden && cd linkwarden @@ -1117,7 +1132,7 @@ Environment configuration vim .env # Change values -NEXTAUTH_URL=http://localhost:3000/api/v1/auth +NEXTAUTH_URL=https://<DOMAIN NAME>/api/v1/auth NEXTAUTH_SECRET=VERY_SENSITIVE_SECRET POSTGRES_PASSWORD=CUSTOM_POSTGRES_PASSWORD@@ -1150,7 +1165,7 @@ p2prc -s & Run map port and domain mapping-p2prc --mp 3000 --dn ldt.akilan.io +p2prc --mp 3000 --dn <DOMAIN NAME>@@ -1172,7 +1187,8 @@ A entry 217.76.63.222
-Your done now just head to ldt.akilan.io (Or your domain name you added) +Your done now just head to the DOMAIN NAME you added. +ex: https://linkwarden.akilan.io
-11. Ideas for future potencial features
++11. Ideas for future potencial features
-Consists of personal loideas for the future of P2PRC. @@ -1199,8 +1215,8 @@ At moment only has main contributors writiing to this.
-11.1. To support hetrogenous set of Nodes that cannot run P2PRC
++11.1. To support hetrogenous set of Nodes that cannot run P2PRC
-This stems from a personal issue I have when doing research @@ -1217,8 +1233,8 @@ network nodes.
-11.1.1. Assumptions:
++-11.1.1. Assumptions:
- I have a Morello board that cannot run P2PRC
@@ -1231,8 +1247,8 @@ as well look into custom tasks into the hetrogenous hardware.-11.1.2. Set of interesting possible:
++-11.1.2. Set of interesting possible:
We build a cool set possibilities before and use this to build up the implementation @@ -1249,8 +1265,8 @@ weight hypervisors.
-11.1.3. Implementation
++11.1.3. Implementation
-
- To use implementations similar to socat to ensure we can bind address of local @@ -1264,7 +1280,7 @@ other nodes can access the Morello board who have permission access.
+diff --git a/Docs/index.org b/Docs/index.org index b638f43..13d317f 100644 --- a/Docs/index.org +++ b/Docs/index.org @@ -777,6 +777,14 @@ func main() { * Blog posts ** Self host within 5 minutes any program + + - Author: [[http://akilan.io/][Akilan Selvacoumar]] + - Date: 28-01-2025 + + + - Video tutorial: + [[https://youtu.be/rN4SiVowg5E][https://i3.ytimg.com/vi/rN4SiVowg5E/maxresdefault.jpg]] + This is a fun expirement for anyone to try to quickly run a server and quickly do a map port and domain name mapping in a single command. @@ -786,7 +794,7 @@ quickly do a map port and domain name mapping in a single command. compose installed on your local machine. **** Let's run Linkwarden using docker compose and P2PRC - [[https://docs.linkwarden.app/self-hosting/installation][Installation instrutions]]: + [[https://docs.linkwarden.app/self-hosting/installation][Installation instructions]]: #+BEGIN_SRC mkdir linkwarden && cd linkwarden curl -O https://raw.githubusercontent.com/linkwarden/linkwarden/refs/heads/main/docker-compose.yml @@ -798,7 +806,7 @@ curl -L https://raw.githubusercontent.com/linkwarden/linkwarden/refs/heads/main/ vim .env # Change values -NEXTAUTH_URL=http://localhost:3000/api/v1/auth +NEXTAUTH_URL=https://
![]()
Figure 2: Implementation idea (To be improved upon)
@@ -1276,7 +1292,7 @@ other nodes can access the Morello board who have permission access./api/v1/auth NEXTAUTH_SECRET=VERY_SENSITIVE_SECRET POSTGRES_PASSWORD=CUSTOM_POSTGRES_PASSWORD #+END_SRC @@ -821,7 +829,7 @@ p2prc -s & Run map port and domain mapping #+BEGIN_SRC -p2prc --mp 3000 --dn ldt.akilan.io +p2prc --mp 3000 --dn #+END_SRC Sample response @@ -838,7 +846,8 @@ p2prc --mp 3000 --dn ldt.akilan.io A entry 217.76.63.222 #+END_SRC - Your done now just head to ldt.akilan.io (Or your domain name you added) + Your done now just head to the DOMAIN NAME you added. + ex: https://linkwarden.akilan.io diff --git a/README.md b/README.md index 916b43e..0712390 100644 --- a/README.md +++ b/README.md @@ -85,9 +85,9 @@ Users acting as clients retain full control over how tasks are batched and assig
## Documentation We have documented to our best effort the basics of p2prc: -Link: https://p2prc.akilan.io/Docs/ +## Link: https://p2prc.akilan.io/Docs/ -