LXC containers on Proxmox have first-class file transfer support. Use pct push to inject the collector, pct exec to run it, and pct pull to retrieve results — the cleanest workflow of all virtualization platforms.
pct push copies a file from the host directly into the container filesystem. No SSH, no mount tricks.CTID=101
pct start "$CTID" 2>/dev/null || true
pct exec "$CTID" -- mkdir -p /opt/versiongopher /var/tmp/versiongopher
pct push "$CTID" ./version_gopher-linux-x64 \
/opt/versiongopher/version_gopher \
--perms 0755 --user 0 --group 0
pct exec "$CTID" -- /bin/sh -lc \ "/opt/versiongopher/version_gopher /usr/bin \ -o /var/tmp/versiongopher/scan"
pct pull copies a file from the container back to the host. No jq parsing needed — it's a direct file copy.pct pull "$CTID" \
/var/tmp/versiongopher/scan.json \
"/tmp/ct-${CTID}-scan.json"
pct push/pull works on any running container immediately — no agent install, no stdin size limits, no JSON output wrapping.