Installation¶
This guide covers installing Occy Strap and verifying it's working correctly.
Requirements¶
- Python 3.7 or later
- pip (Python package manager)
- Network access to container registries (for downloading images)
- Optionally: Docker or Podman daemon (for local image operations)
Installation from PyPI¶
The simplest way to install Occy Strap is via pip:
Installation from Source¶
To install the latest development version:
Verifying the Installation¶
After installation, verify that Occy Strap is working:
# Check the version
occystrap --help
# Try downloading a small image
occystrap process registry://docker.io/library/hello-world:latest \
tar://hello-world.tar
# Verify the tarball was created
ls -la hello-world.tar
Dependencies¶
Occy Strap depends on the following Python packages (installed automatically):
| Package | Purpose |
|---|---|
| click | Command-line interface framework |
| requests | HTTP client for registry API |
| requests-unixsocket | Unix socket support for Docker daemon |
| prettytable | Formatted table output |
| oslo.concurrency | Concurrency utilities |
| shakenfist-utilities | Shared utilities |
Platform Support¶
Occy Strap is primarily designed for Linux systems. It may work on other platforms with Python support, but has been tested on:
- Ubuntu 20.04, 22.04
- CentOS 7, 8
- Debian 10, 11
Optional: Docker/Podman Socket Access¶
To use Occy Strap with local Docker or Podman images, you need access to the daemon socket:
Docker¶
The Docker socket is typically at /var/run/docker.sock. Your user needs to be
in the docker group:
Podman¶
Podman doesn't run a daemon by default. Enable the socket service:
# For rootless Podman (recommended)
systemctl --user start podman.socket
# For rootful Podman
sudo systemctl start podman.socket
The rootless socket is at /run/user/<uid>/podman/podman.sock, and the rootful
socket is at /run/podman/podman.sock.
Troubleshooting¶
Permission Denied on Docker Socket¶
If you see "Permission denied" errors when accessing the Docker socket:
# Add your user to the docker group
sudo usermod -aG docker $USER
# Log out and back in, or use newgrp
newgrp docker
SSL Certificate Errors¶
If you encounter SSL certificate verification errors with private registries:
# Use the --insecure flag
occystrap --insecure process registry://myregistry.local/image:tag tar://out.tar
Connection Refused to Registry¶
Ensure the registry hostname is correct and network access is available:
Next Steps¶
- Command Reference - Learn the CLI commands
- Use Cases - Common scenarios and examples