在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:AuHau/ipfs-publish开源软件地址:https://github.com/AuHau/ipfs-publish开源编程语言:Python 97.8%开源软件介绍:IPFS Publish
AboutThis is a tool that aims to enable automatic publishing of static webpages from Git repositories into IPFS. It consists of two parts: small web server and management CLI. Web server exposes an endpoint which you use as your Git's webhook. When the hook is invoked, it clones your repo, build it (if needed), add it to the IPFS node (pin it if configured) and publish the new IPFS address under configured IPNS name. CLI is in place to manage the repos. Features
Git providersCurrently the webhook supports generic mode, where the repo's secret is passed through as URL's parameter. There is also special mode for GitHub, where the secret should be configured as part of the Webhook's configuration. WarningThis tool is not meant as public service and only trusted Git repos should be used with it. It can introduce serious security risk into your system as the runtime environment for the scripts is not isolated from rest of your machine! InstallRequirements
pipYou can install ipfs-publish directly on your machine using $ pip install ipfs-publish Then you can use the command DockerThere is official Docker image build with name: Easiest way to run ipfs-publish is with docker-compose. Here is example for its configuration: version: '3'
services:
ipfs:
image: ipfs/go-ipfs:v0.4.23
volumes:
- /data/ipfs # or you can mount it directly to some directory on your system
ipfs-publish:
image: auhau/ipfs-publish
environment:
IPFS_PUBLISH_CONFIG: /data/ipfs_publish/config.toml
IPFS_PUBLISH_VERBOSITY: 3
IPFS_PUBLISH_IPFS_HOST: ipfs
IPFS_PUBLISH_IPFS_PORT: 5001
volumes:
- /data/ipfs_publish
depends_on:
- ipfs
ports:
- 8080:8000 For more information see documentation. Usage# Add new repo
$ ipfs-publish add
[?] Git URL of the repo: https://github.com/auhau/auhau.github.io
[?] Name of the new repo: github_com_auhau_auhau_github_io
[?] Do you want to publish to IPNS? (Y/n):
[?] Path to build binary, if you want to do some pre-processing before publishing:
[?] Path to after-publish binary, if you want to do some actions after publishing:
[?] Directory to be published inside the repo. Path related to the root of the repo: /
Successfully added new repo!
Use this URL for you webhook: http://localhost:8080/publish/github_com_auhau_auhau_github_io
Also set this string as your hook's Secret: NIHT4785CVFT358GFE08RDAZG
Your IPNS address: /ipns/QmRTqaW3AJJXmKyiNT7MqqZ4VjGtNNxPyTkgo3Q7pmoCeX/
# List current enabled repos
$ ipfs-publish list
github_com_auhau_auhau_github_io
# Show details of repo
$ ipfs-publish show github_com_auhau_auhau_github_io
github_com_auhau_auhau_github_io
Git URL: https://github.com/auhau/auhau.github.io
Secret: EAHJ43UYT7LUEM4QFRZ4IFAXL
IPNS key: ipfs_publishg_github_com_auhau_auhau_github_io
IPNS lifetime: 24h
IPNS ttl: 15m
IPNS address: /ipns/QmRTqaW3AJJXmKyiNT7MqqZ4VjGtNNxPyTkgo3Q7pmoCeX/
Last IPFS address: None
Webhook address: http://localhost:8080/publish/github_com_auhau_auhau_github_io
# You can manually publish repo
$ ipfs-publish publish github_com_auhau_auhau_github_io
# Starts HTTP server & IPNS republishing service
$ ipfs-publish server &
Running on http://localhost:8080 (CTRL + C to quit) ContributingFeel free to dive in, contributions are welcomed! Open an issue or submit PRs. For PRs and tips about development please see contribution guideline. License |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论