apptainer(1)

πŸ’… apptainer pull β€” the manual page, but make it make sense ✨

okay bestie, so you know how the apptainer manual lives at apptainer(1)? yeah. this is that. well β€” specifically the pull page of it. it's the one you're gonna be living in, so grab a snack πŸ“


🌸 NAME 🌸

apptainer-pull β€” pull an image from a URI. that's it. that's the whole vibe. you give it a URI, you get an image. iconic behavior honestly πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

apptainer pull [pull options...] [output file]

short, sweet, and absolutely ate. options in the middle, output file at the end if you want one, no cap.


πŸ’– DESCRIPTION πŸ’–

so the pull command literally lets you download or build a container from a given URI. like, one command, image acquired, main character energy πŸ”₯

here's the URIs it supports, and yes i'm listing every single one because we don't do gatekeeping here:

  • library β€” pulls an image from the currently configured library ✨
library://user/collection/container[:tag]
  • docker β€” pulls a Docker/OCI image from Docker Hub, or honestly any other OCI registry 🐳
docker://user/image:tag
  • shub β€” pulls an image from Singularity Hub πŸŽ€
shub://user/image:tag
  • oras β€” pulls a SIF image from an OCI registry that supports ORAS 🌈
oras://registry/namespace/image:tag
  • ipfs β€” pulls a SIF image from an IPFS cluster, using a HTTP gateway 🧚
ipfs://cid
  • http, https β€” pulls an image using the http(s?) protocol, classic behavior πŸ’œ
https://example.com/alpine.sif

✨ OPTIONS ✨

okay so here's the full menu, no skips, no cuts, we're covering all of them 🫢

  • --arch="amd64" β€” architecture to pull from library. default's amd64, so if that's you, you're already slaying by doing nothing.
  • --arch-variant="" β€” architecture variant to pull from library. empty by default, iykyk.
  • --authfile="" β€” Docker-style authentication file to use for writing/reading OCI registry credentials. your little key to the registry πŸ”‘
  • --dir="" β€” download images to the specific directory. tell it where to put the goods.
  • --disable-cache[=false] β€” do not use or create cached images/blobs. cache? never met her πŸ’€
  • --docker-host="" β€” specify a custom Docker daemon host.
  • --docker-login[=false] β€” login to a Docker Repository interactively. it will literally talk to you.
  • -F, --force[=false] β€” overwrite an image file if it exists. yes, for real, it will steamroll that existing file. be aware 😭
  • -h, --help[=false] β€” help for pull. classic. never not useful.
  • --library="" β€” download images from the provided library.
  • --no-cleanup[=false] β€” do NOT clean up bundle after failed build, can be helpful for debugging. like leaving the crime scene intact for the investigators πŸ•΅οΈ
  • --no-https[=false] β€” use http instead of https for docker://, oras:// and library:///... URIs. lowercase http. unsecured. chaotic but sometimes necessary.
  • --reproducible[=false] β€” creates a reproducible build by using the creation date of the source image. same image, same date, every time. consistent queen πŸ‘‘
  • --sandbox[=false] β€” pull image as sandbox format (chroot directory structure). not a .sif girlie today, we're doing a whole directory.

🌟 EXAMPLE 🌟

okay this is the part you actually came for, let's go πŸƒβ€β™€οΈπŸ’¨

From a library

$ apptainer pull alpine.sif library://alpine:latest

From Docker

$ apptainer pull tensorflow.sif docker://tensorflow/tensorflow:latest
$ apptainer pull --arch arm --arch-variant 6 alpine.sif docker://alpine:latest

From Shub

$ apptainer pull apptainer-images.sif shub://vsoch/apptainer-images

From supporting OCI registry (e.g. Azure Container Registry)

$ apptainer pull image.sif oras://<username>.azurecr.io/namespace/image:tag

From available IPFS cluster (using a local HTTP IPFS gateway)

$ apptainer pull lolcow.sif ipfs://bafybeice667c6gxovimsb6gnk6vex7vhzluhkl5hjv4ac4lhilxn52c43m

look at that IPFS CID. it's giving base32 final boss πŸ’€ but it's literally copy-paste-able so you're fine.


πŸ‘€ SEE ALSO πŸ‘€

  • apptainer(1) β€” the mothership. go there if you need the big picture πŸ›Έ

πŸ“œ HISTORY πŸ“œ

22-Oct-2026 β€” Auto generated by spf13/cobra. yeah the robots wrote this one, but we made it cute 🌸


ngl if this was a whole lot, just remember: URI in, image out, read the options before you --force something you love πŸ’–

okay bye bestie, go pull something iconic πŸŽ€βœ¨πŸ¦‹ β€” this little rewrite is your sign-off: Auto generated by spf13/cobra Β· Oct 2026 Β· apptainer(1) πŸ«ΆπŸ’œ

πŸ“¦ where this page comes from
  • epel 9: apptainer 1.5.5-1.el9 Β· Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND BSD-3-Clause-LBNL AND ISC AND MIT AND MPL-2.0 AND Unlicense
  • πŸ’– girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms