{% extends "layout.html" %} {% from "_partials/page_description.html" import page_description %} {% block title %}Images - pixie{% endblock %} {% block subnav %} {% endblock %} {% block content %} {{ page_description('hdd-fill', 'Fetched images - the materialised content behind Catalog sources. Identity is the disk content sha; each image rolls up its on-disk footprint (raw disk + rootfs + boot bundle + overlays) and every live usage: machines bound to it, its ephemeral NBD export (nbdkit), and per-machine persistent overlays (qemu-nbd). The usage counts are the refcount that makes a blob safe to delete.') }} {% set ns = namespace(footprint=0, inuse=0) %} {% for im in images %}{% set ns.footprint = ns.footprint + im.footprint_bytes %}{% if im.in_use %}{% set ns.inuse = ns.inuse + 1 %}{% endif %}{% endfor %}
Fetched images
{{ images | length }}
On disk
{{ ns.footprint | humanize_bytes }}
raw disk + rootfs + boot + overlays
In use
{{ ns.inuse }} / {{ images | length }}
others are safe to reclaim
Images
{% if images %}
{% for im in images %} {% endfor %}
Image On disk Boot Machines NBD export Overlays
{{ im.sha[:12] }} {% if im.names | length > 1 %} +{{ im.names | length - 1 }} more name(s) {% endif %} {% if im.orphan %}orphan {% elif not im.in_use %}unused{% endif %}
{{ im.footprint_bytes | humanize_bytes }}
disk {{ im.disk_bytes | humanize_bytes }}{% if im.boot_bytes %} · boot {{ im.boot_bytes | humanize_bytes }}{% endif %}{% if im.overlays_bytes %} · ovl {{ im.overlays_bytes | humanize_bytes }}{% endif %}
{% if im.nbdboot_capable %} nbdboot {% else %} flash only {% endif %} {% if im.machines_count %} {{ im.machines_count }} bound
{% for mu in im.machines[:4] %} {{ mu.mac }}{% if not loop.last %},{% endif %} {% endfor %} {% if im.machines_count > 4 %}+{{ im.machines_count - 4 }}{% endif %}
{% else %} - {% endif %}
{% if im.export_running %} {% for p in im.export_ports %}:{{ p }}{% if not loop.last %} {% endif %}{% endfor %}
nbdkit (ephemeral)
{% else %} idle {% endif %}
{% if im.overlays_total %} {{ im.overlays_total }}
{{ im.overlays_running }} serving (qemu-nbd)
{% else %} - {% endif %}
{% else %}

No fetched images yet. Add a source on Catalog and Fetch it; the materialised image shows up here with its footprint + usages.

{% endif %}
{% endblock %}