Local Artifact Management
Overview
Upload and download artifacts using a simple prompt from your coding agent, or use your regular terminal commands. Either way, Fly handles authentication and routing for you.
Upload and Download with Fly
Ask your coding agent:
“Publish this npm package to Fly”
or
“Install the latest version of my-private-package”
Your packages go to your private Fly Registry at <your-team>.jfrog.io. Public dependencies are proxied through Fly from public registries and cached. No configuration files, no tokens. The Fly Desktop App already configured your local package managers on install.
Prefer Terminal Commands?
Make sure your Fly App is installed and your package managers are configured, and you’re all set. Your regular commands are already pointing to Fly.
Standard package managers:
| Package Manager | Upload | Download |
|---|---|---|
| npm | npm publish | npm install |
| pip (PyPI) | twine upload dist/* | pip install |
| Maven (Java) | mvn deploy | mvn install |
| Go | go publish | go get |
| NuGet | dotnet nuget push | dotnet restore |
Docker and Helm require your Fly subdomain in the image/chart path:
docker push <your-fly-subdomain>.jfrog.io/docker/my-image:latest
docker pull <your-fly-subdomain>.jfrog.io/docker/my-image:latest
helm push my-chart-1.0.0.tgz <your-fly-subdomain>.jfrog.io/helmoci
helm pull <your-fly-subdomain>.jfrog.io/helmoci/my-chart --version 1.0.0Examples
Node.js (npm)
# Publish your package to Fly Registry
npm publish
# Install a private package from Fly
npm install my-private-package
# Install a public dependency (proxied through Fly)
npm install expressPython (pip)
# Build and upload
python setup.py sdist bdist_wheel
twine upload dist/*
# Install from Fly
pip install my-private-package
pip install requestsDocker
# Tag and push
docker tag my-image:latest <your-fly-subdomain>.jfrog.io/docker/my-image:latest
docker push <your-fly-subdomain>.jfrog.io/docker/my-image:latest
# Pull
docker pull <your-fly-subdomain>.jfrog.io/docker/my-image:latestJava (Maven)
mvn clean deploy # Upload to Fly Registry
mvn clean install # Download dependencies from FlyManual Configuration
For Kubernetes, external systems, or environments without the Fly App, generate an access token in Fly Web and configure your package manager manually using your registry path.
| Package Manager | Registry Path | Configuration |
|---|---|---|
| Docker | <your-fly-subdomain>.jfrog.io/docker | docker login |
| Helm | <your-fly-subdomain>.jfrog.io/helmoci | helm registry login |
| npm | <your-fly-subdomain>.jfrog.io/artifactory/api/npm/npm/ | .npmrc |
| pip (PyPI) | <your-fly-subdomain>.jfrog.io/artifactory/api/pypi/pypi/ | pip.conf |
| Maven | <your-fly-subdomain>.jfrog.io/artifactory/libs-release/ | settings.xml |
| Go | <your-fly-subdomain>.jfrog.io/artifactory/api/go/go/ | GOPROXY |
| NuGet | <your-fly-subdomain>.jfrog.io/artifactory/api/nuget/nuget/ | dotnet nuget add source |
See detailed configuration steps in Package Managers →
Next Steps
- Automated Workflows → - Configure CI/CD
- Artifacts → - Full platform reference for artifacts
- Package Types → - Detailed configuration for each package manager