Sharing Ollama Models
Sign in, namespace a custom model under your username, and push it so a team can pull it.
TL;DR
- Sign in first with
ollama signinto push models. - Prefix a model with your username, like
you/model. - Publish a custom model to the registry with
ollama push.
Authenticate
ollama signinSign in to your ollama.com account from the CLI.
ollama signinPublic KeyAdd this key to your account before pushing.
cat ~/.ollama/id_ed25519.pubollama signoutSign the CLI out of your account.
ollama signoutName For Your Namespace
username/modelPrefix the model name with your account username.
# Name pattern: <username>/<model>Tag A CopyCopy a local model into your namespace name.
ollama cp sql-tutor you/sql-tutorAdd A VersionAppend a tag to version your shared model.
ollama cp sql-tutor you/sql-tutor:v1Push And Pull
ollama pushUpload the namespaced model to the registry.
ollama push you/sql-tutorShare The PullTeammates download it by its full name.
ollama pull you/sql-tutorRun SharedRun the pulled model like any local one.
ollama run you/sql-tutorPrivate Registries
ollama loginAuthenticate to a private registry by host.
ollama login registry.internal:5000Namespaced HostPush to a self-hosted registry by full path.
ollama push registry.internal:5000/team/botTeam SharingA shared account namespace distributes to a team.
# Push under a shared team account nameTips
- Sign in once with
ollama signin; it stores anEd25519key, so later pushes and private pulls sign themselves automatically. - Copy a model into your namespace with
ollama cpbefore pushing, so its name matches yourusername/modelaccount path.
Warnings
- A push fails until the public key at
~/.ollama/id_ed25519.pubis added to your ollama.com account settings. - The namespace must equal your Ollama username; pushing to a namespace you do not own returns an unauthorized error.
In Practice
Sign in, copy a local model into your namespace, push it, then have a teammate pull and run it.
- The first run of
ollama signinlinks your key to your account. ollama cprenames the model under your namespace with a version tag.ollama pushuploads it so anyone on the team can fetch it.- A teammate pulls the exact name and runs it unchanged.
# 1. Sign in (adds your key on first run)
ollama signin
# 2. Name the model under your namespace
ollama cp sql-tutor you/sql-tutor:v1
# 3. Push it to the registry
ollama push you/sql-tutor:v1
# 4. A teammate pulls and runs it
ollama pull you/sql-tutor:v1
ollama run you/sql-tutor:v1FAQ
Sign in with ollama signin, copy the model into your namespace with ollama cp, then run ollama push you/model. Teammates download it with ollama pull you/model.
Run ollama signin, which generates an Ed25519 key pair and links it to your ollama.com account. Add the public key at ~/.ollama/id_ed25519.pub to your account before your first push.
Either you are not signed in, or the model is not namespaced under your username. The name must be yourusername/model, and your public key must be on your account.
Yes. Authenticate to it with ollama login host:port, then push using a fully qualified name like host:port/team/model. This keeps custom models inside your own infrastructure.