* feat: update submodule Signed-off-by: Gaius <gaius.qi@gmail.com> * feat: update submodule Signed-off-by: Gaius <gaius.qi@gmail.com> |
||
|---|---|---|
| .github | ||
| api | ||
| build | ||
| cdn | ||
| client | ||
| cmd | ||
| deploy | ||
| docs | ||
| hack | ||
| internal | ||
| manager | ||
| pkg | ||
| scheduler | ||
| test | ||
| version | ||
| .gitignore | ||
| .gitmodules | ||
| .golangci.yml | ||
| .goreleaser.yml | ||
| .markdownlint.yml | ||
| CHANGELOG.md | ||
| CODE_OF_CONDUCT.md | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| MAINTAINERS.md | ||
| Makefile | ||
| README.md | ||
| SECURITY.md | ||
| codecov.yml | ||
| go.mod | ||
| go.sum | ||
README.md
Dragonfly
Provide efficient, stable, secure, low-cost file and image distribution services to be the best practice and standard solution in cloud native architectures.
Introduction
Dragonfly is an open source P2P-based file and image distribution system. It is hosted by the Cloud Native Computing Foundation (CNCF) as an Incubating Level Project. Its goal is to tackle all distribution problems in cloud native architectures. Currently Dragonfly focuses on being:
- Simple: Well-defined user-facing API (HTTP), non-invasive to all container engines;
- Efficient: Seed peer support, P2P based file distribution to save enterprise bandwidth;
- Intelligent: Host-level speed limit, intelligent flow control due to host detection;
- Secure: Block transmission encryption, HTTPS connection support.
Architecture
Manager: Used to manage the dynamic configuration that each module depends on, and provide keepalive and metrics features. It can be deployed using manager module.
Scheduler: The tracker and scheduler in the P2P network that chooses appropriate downloading net-path for each peer. It can be deployed using scheduler module.
Seed Peer: A seed peer server that caches downloaded data from source. It can be deployed using dfdaemon or cdn module and is recommended to provide quality networking and storage.
Peer: A peer server can download resources from other peers, and can also share resources with other peers. It can be deployed using dfdaemon module. Dfdaemon provides a proxy to allow client traffic such as containerd/CRI-O to use the P2P network, and also provides dfget download command tool, which is similar to wget.
Documentation
You can find the full documentation on the d7y.io.
Community
Welcome developers to actively participate in community discussions and contribute code to Dragonfly. We will remain concerned about the issues discussed in the community and respond quickly.
- Slack Channel: #dragonfly on CNCF Slack
- Discussion Group: dragonfly-discuss@googlegroups.com
- Developer Group: dragonfly-developers@googlegroups.com
- Github Discussions: Dragonfly Discussion Forum
- Twitter: @dragonfly_oss
- DingTalk: 23304666
Contributing
You should check out our CONTRIBUTING and develop the project together.
Code of Conduct
Please refer to our Code of Conduct.
