Dragonfly is an open source P2P-based file distribution and image acceleration system. It is hosted by the Cloud Native Computing Foundation (CNCF) as an Incubating Level Project.
Go to file
jinronga b5dbd6b48c vAdd fmt, vet, and precheck targets to Makefile for better CI and code quality
- Add mt target to run go fmt for code formatting.
- Add et target to run go vet for static analysis.
- Add precheck target to run fmt, vet, lint, and test in one command.
- Update help section to document new targets.
- These changes improve developer experience and make it easier to maintain code quality in CI.

Signed-off-by: jinronga <1460595002@qq.com>
2025-07-04 23:21:58 +08:00
.github chore: bump client-rs to v1.0.1 (#4174) 2025-07-03 07:24:46 +00:00
api feat: add content for calculating task id when preheat file and handle task (#3994) 2025-04-24 15:49:32 +00:00
build chore(deps): bump client-rs to v1.0.0 and bump console to v0.2.8 (#4172) 2025-07-01 17:16:22 +08:00
client feat: add logLevel and remove verbose (#4157) 2025-06-24 07:27:28 +00:00
client-rs@cad36b3a19 chore: bump client-rs to v1.0.1 (#4174) 2025-07-03 07:24:46 +00:00
cmd feat: support HTTPS protocol for otel (#4159) 2025-06-25 08:35:36 +00:00
deploy chore: bump client-rs to v1.0.1 (#4174) 2025-07-03 07:24:46 +00:00
docs docs: add security audit report (#2729) 2023-09-15 14:44:41 +08:00
hack chore(deps): bump client-rs to v1.0.0 and bump console to v0.2.8 (#4172) 2025-07-01 17:16:22 +08:00
internal feat: add logLevel and remove verbose (#4157) 2025-06-24 07:27:28 +00:00
manager feat: Change Result column type to longtext in Job model to fix data too long error (#4181) 2025-07-03 21:44:49 +08:00
pkg feat: add logLevel and remove verbose (#4157) 2025-06-24 07:27:28 +00:00
scheduler feat: support HTTPS protocol for otel (#4159) 2025-06-25 08:35:36 +00:00
test feat: add logLevel and remove verbose (#4157) 2025-06-24 07:27:28 +00:00
version chore(deps): bump client-rs to v1.0.0 and bump console to v0.2.8 (#4172) 2025-07-01 17:16:22 +08:00
.gitignore feat(manager): optimizing tracing configuration (#4102) 2025-05-29 10:42:17 +08:00
.gitmodules chore: add client-rs submodule to main (#3114) 2024-03-12 21:18:42 +08:00
.golangci.yml refactor(lint): update golangci-lint to v2 and configure .golangci.yml (#3956) 2025-04-15 21:14:13 +08:00
.goreleaser.yml chore(goreleaser): add release footer with contributors and changelog links (#4161) 2025-06-25 23:13:10 +08:00
.markdownlint.yml docs: add metrics document (#1075) 2023-06-28 17:32:57 +08:00
ADOPTERS.md chore: rename repo from Dragonfly2 to dragonfly (#3715) 2024-12-20 17:21:53 +08:00
CHANGELOG.md feat: adds the audit middleware to records the system audit events (#3958) 2025-04-16 17:58:24 +08:00
CODE_OF_CONDUCT.md Consolidate community docs (#4087) 2025-05-23 15:59:40 +08:00
CONTRIBUTING.md Consolidate community docs (#4087) 2025-05-23 15:59:40 +08:00
GOVERNANCE.md Consolidate community docs (#4087) 2025-05-23 15:59:40 +08:00
LICENSE Merge branch main-rc to branch main 2023-06-28 17:20:20 +08:00
MAINTAINERS.md Add Chlins Zhang as maintainer (#4091) 2025-05-21 18:26:36 +08:00
Makefile vAdd fmt, vet, and precheck targets to Makefile for better CI and code quality 2025-07-04 23:21:58 +08:00
OWNERS.md docs: Update OWNERS.md to reference emeritus_members.yaml for emeritus maintainers (#4128) 2025-06-13 18:48:40 +08:00
README.md docs(README.md): add FOSSA Status badge (#4144) 2025-06-20 10:37:39 +08:00
SECURITY.md Consolidate community docs (#4087) 2025-05-23 15:59:40 +08:00
codecov.yml feat: support get info of the preheating image (#4139) 2025-06-18 10:57:22 +00:00
go.mod chore(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp from 1.36.0 to 1.37.0 (#4167) 2025-07-01 04:24:57 +00:00
go.sum chore(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp from 1.36.0 to 1.37.0 (#4167) 2025-07-01 04:24:57 +00:00

README.md

Dragonfly

alt

GitHub release Artifact Hub OpenSSF Scorecard CI Go Report Card Discussions OpenSSF Best Practices Twitter LICENSE FOSSA Status

Provide efficient, stable and secure file distribution and image acceleration based on p2p technology to be the best practice and standard solution in cloud native architectures.

Introduction

Dragonfly is an open source P2P-based file distribution and image acceleration 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

alt

Manager: Maintain the relationship between each P2P cluster, dynamic configuration management and RBAC. It also includes a front-end console, which is convenient for users to visually operate the cluster.

Scheduler: Select the optimal download parent peer for the download peer. Exceptions control Dfdaemon's back-to-source.

Seed Peer: Dfdaemon turns on the Seed Peer mode can be used as a back-to-source download peer in a P2P cluster, which is the root peer for download in the entire cluster.

Peer: Deploy with dfdaemon, based on the C/S architecture, it provides the dfget command download tool, and the dfget daemon running daemon to provide task download capabilities.

Documentation

You can find the full documentation on the d7y.io.

Security

Security Audit

A third party security audit was performed by Trail of Bits, you can see the full report here.

Community

Join the conversation and help the community.

Contributing

You should check out our CONTRIBUTING and develop the project together.

Code of Conduct

Please refer to our Code of Conduct.