Skip to content

enroot import inside docker #260

@activatedgeek

Description

@activatedgeek

Is it possible to import docker images via enroot inside docker itself?

I have this Dockerfile,

ARG ENROOT_VERSION=4.0.1

FROM ubuntu:24.04

ENV DEBIAN_FRONTEND=noninteractive

RUN apt update -y && \
    apt install -y \
        bsdmainutils \
        curl \
        jq \
        libcap2-bin \
        parallel \
        squashfs-tools \
        zstd && \
    rm -rf /var/lib/apt/lists/*

ARG ENROOT_VERSION
RUN arch=$(dpkg --print-architecture) && \
    curl -fSsL -O https://github.com/NVIDIA/enroot/releases/download/v${ENROOT_VERSION}/enroot_${ENROOT_VERSION}-1_${arch}.deb && \
    curl -fSsL -O https://github.com/NVIDIA/enroot/releases/download/v${ENROOT_VERSION}/enroot+caps_${ENROOT_VERSION}-1_${arch}.deb && \
    unset arch && \
    apt install -y ./enroot*.deb && \
    rm enroot*.deb

The installation works, but running

enroot import -o /ubuntu.sqsh docker://ubuntu:24.04

leads to an error,

[INFO] Querying registry for permission grant
[INFO] Authenticating with user: <anonymous>
[INFO] Authentication succeeded
[INFO] Fetching image manifest list
[INFO] Fetching image manifest
[INFO] Found all layers in cache
[INFO] Extracting image layers...

100% 1:0=0s a3629ac5b9f4680dc2032439ff2354e73b06aecc2e68f0035a2d7c001c8b4114

[INFO] Converting whiteouts...

0% 0:1=0s a3629ac5b9f4680dc2032439ff2354e73b06aecc2e68f0035a2d7c001c8b4114                                                           
/usr/bin/bash: line 1: /usr/bin/enroot-aufs2ovlfs: Operation not permitted
100% 1:0=0s a3629ac5b9f4680dc2032439ff2354e73b06aecc2e68f0035a2d7c001c8b4114

My hope is to use this Docker image with Gitlab CI to import the built Docker images with enroot.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions