{"id":22841261,"url":"https://github.com/adamcanray/private-ipfs-worker","last_synced_at":"2025-03-31T04:39:19.738Z","repository":{"id":222594693,"uuid":"757843541","full_name":"adamcanray/Private-IPFS-Worker","owner":"adamcanray","description":null,"archived":false,"fork":false,"pushed_at":"2024-02-28T06:03:05.000Z","size":8,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-06T09:13:52.120Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/adamcanray.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-15T05:13:50.000Z","updated_at":"2024-02-15T05:14:03.000Z","dependencies_parsed_at":"2024-02-15T06:26:50.496Z","dependency_job_id":"f9b7ec78-33cc-4874-88df-f99b216a4a34","html_url":"https://github.com/adamcanray/Private-IPFS-Worker","commit_stats":null,"previous_names":["adamcanray/private-ipfs-worker"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adamcanray%2FPrivate-IPFS-Worker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adamcanray%2FPrivate-IPFS-Worker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adamcanray%2FPrivate-IPFS-Worker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adamcanray%2FPrivate-IPFS-Worker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adamcanray","download_url":"https://codeload.github.com/adamcanray/Private-IPFS-Worker/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246418699,"owners_count":20773935,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-13T01:15:28.647Z","updated_at":"2025-03-31T04:39:19.711Z","avatar_url":"https://github.com/adamcanray.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# IPFS Worker Node\n\nThis repository is for IPFS Worker Node.\n\n## Run\n\n1. Build the image\n\n   ```bash\n   docker build . -t ipfs_worker --no-cache\n   ```\n\n   if we want to build the image for specific platform (ex: `--platform linux/arm64/v8`).\n\n2. Run the container\n\n   ```bash\n   docker run --name \u003cname\u003e -e MANAGER_IPFS_ID=\u003cmanager_ipfs_id\u003e -e MANAGER_IP_ADDRESS=\u003cmanager_ip_address\u003e -d ipfs_worker\n   ```\n\n   \u003e we can get the `MANAGER_IPFS_ID` and `MANAGER_IP_ADDRESS` from the manager node:\n\n   ```bash\n   \u003c!-- go to the manager node terminal --\u003e\n   docker exec -it \u003cname\u003e /bin/sh\n\n   \u003c!-- below command will show detail in json structure, just copy the `ID` --\u003e\n   ipfs id\n\n   \u003c!-- below command will show interface config, copy the ip from eth0 (or other interface) --\u003e\n   ifconfig\n   ```\n\n   \u003e if we want to expose the port, we can add for example `-p 4001:4001 -p 5001:5001 -p 8080:8080` to the command, but on ipfs config we are not exposed the API server (`:5001`) to the public.\n\n## Addition\n\n### About project\n\nThis project is running well with alphine linux with arm base (`linux/arm64/v8`), if you run this project using different distribution, maybe you should adjust some scripts or service config (ex: `services/ipfs`, etc).\n\n### Porject Debugging\n\nIf the ipfs daemon is not running, we can start it manually for each node with `rc-service ipfs start` command. First, we should exec into the container\n\n```bash\ndocker exec -it \u003cname\u003e /bin/sh\n```\n\nthen start the ipfs daemon.\n\n```bash\nrc-status -a\nrc-service ipfs start\ntouch /run/openrc/softlevel\nrc-service ipfs restart\nrc-update add ipfs default\nsleep 1\nrc-status -a\n```\n\n## Notes\n\n- In [previous](https://github.com/adamcanray/Private-IPFS-Cluster-Data-Replication), manager and worker project is in one code base, we run with docker compose to simplify the automation, since currently the worker project is not on one code base anymore, we should run it in some steps (ex: running worker node manually, then run worker nodes and pointing it to the worker manually), see [Run](/#Run) section above.\n- The `swarm.key`is should be confidential (generated once from manager).\n- do step 2 on [Run](/#Run) section above for running other worker nodes.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadamcanray%2Fprivate-ipfs-worker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadamcanray%2Fprivate-ipfs-worker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadamcanray%2Fprivate-ipfs-worker/lists"}