darwin-containers / rund

OCI Container Runtime for Darwin
Apache License 2.0
432 stars 13 forks source link

stuck at building an image #38

Open FBIanderson opened 5 months ago

FBIanderson commented 5 months ago

After i configed the containerd/dockerd/rund, i run

docker run --rm -it ghcr.io/macoscontainers/macos-jail/ventura:latest echo "Hello from macOS container ^_^"

it is ok , when i run

sudo docker build . -t bla

it stucked after " => => transferring dockerfile: 151B" here is the Dockerfile

FROM ghcr.io/macoscontainers/macos-jail/ventura:latest
RUN echo "hello world"
FBIanderson commented 5 months ago

with this containerd log

INFO[2024-01-15T16:38:30.489538000+08:00] starting containerd                           revision= version=2.0.0-beta.0+unknown
INFO[2024-01-15T16:38:30.492518000+08:00] loading plugin "io.containerd.image-verifier.v1.bindir"...  type=io.containerd.image-verifier.v1
INFO[2024-01-15T16:38:30.492541000+08:00] loading plugin "io.containerd.internal.v1.opt"...  type=io.containerd.internal.v1
INFO[2024-01-15T16:38:30.492607000+08:00] loading plugin "io.containerd.warning.v1.deprecations"...  type=io.containerd.warning.v1
INFO[2024-01-15T16:38:30.492618000+08:00] loading plugin "io.containerd.event.v1.exchange"...  type=io.containerd.event.v1
INFO[2024-01-15T16:38:30.492652000+08:00] loading plugin "io.containerd.content.v1.content"...  type=io.containerd.content.v1
INFO[2024-01-15T16:38:30.492671000+08:00] loading plugin "io.containerd.snapshotter.v1.blockfile"...  type=io.containerd.snapshotter.v1
INFO[2024-01-15T16:38:30.493105000+08:00] skip loading plugin "io.containerd.snapshotter.v1.blockfile"...  error="no scratch file generator: skip plugin" type=io.containerd.snapshotter.v1
INFO[2024-01-15T16:38:30.493123000+08:00] loading plugin "io.containerd.snapshotter.v1.native"...  type=io.containerd.snapshotter.v1
INFO[2024-01-15T16:38:30.493144000+08:00] loading plugin "io.containerd.metadata.v1.bolt"...  type=io.containerd.metadata.v1
INFO[2024-01-15T16:38:30.493157000+08:00] metadata content store policy set             policy=shared
WARN[2024-01-15T16:38:40.498183000+08:00] waiting for response from boltdb open         plugin=bolt
FBIanderson commented 5 months ago

image the above problem has been solved, i need to enable the macfuse and reboot the machine. now when i exporting to image, it panic an error "operation not permitted: unknown"

=> ERROR exporting to image                                                                                                                                                                   346.5s
 => => exporting layers                                                                                                                                                                        346.4s
------
 > exporting to image:
------
error: failed to solve: mount callback failed on /tmp/containerd-mount3290761200: mount callback failed on /tmp/containerd-mount765707475: failed to write compressed diff: failed to create diff tar stream: failed to get xattr for /tmp/containerd-mount3290761200/dev/null: operation not permitted: unknown

@slonopotamus

bickkysahani commented 5 months ago

same here when I run

sudo docker build . -t bla

here's my containerd log

time="2024-01-25T09:26:31.590530000+05:45" level=info msg="Start snapshots syncer"
time="2024-01-25T09:26:31.591884000+05:45" level=info msg="Start subscribing containerd event"
time="2024-01-25T09:26:31.591965000+05:45" level=info msg="Start recovering state"
time="2024-01-25T09:26:31.592231000+05:45" level=info msg=serving... address=/var/run/containerd/containerd.sock.ttrpc
time="2024-01-25T09:26:31.592408000+05:45" level=info msg=serving... address=/var/run/containerd/containerd.sock
time="2024-01-25T09:26:31.592540000+05:45" level=info msg="Start event monitor"
time="2024-01-25T09:26:31.592571000+05:45" level=info msg="Start streaming server"
time="2024-01-25T09:26:31.592601000+05:45" level=info msg="containerd successfully booted in 0.038693s"
2024/01/25 09:26:36 traces export: Post "https://localhost:4318/v1/traces": dial tcp [::1]:4318: connect: connection refused
2024/01/25 09:26:46 traces export: Post "https://localhost:4318/v1/traces": dial tcp [::1]:4318: connect: connection refused
time="2024-01-25T09:27:23.804211000+05:45" level=info msg="connecting to shim pj140n50h4slphop5c5bsesuo" address="unix:///var/run/containerd/s/afa982d2657a954f3c2a3839a5e98d5a94f0868ef56ea29633e63ca82a351aca" namespace=moby protocol=ttrpc version=3
time="2024-01-25T09:27:23.811701000+05:45" level=info msg="loading plugin \"io.containerd.event.v1.publisher\"..." runtime=io.containerd.rund.v2 type=io.containerd.event.v1
time="2024-01-25T09:27:23.813330000+05:45" level=info msg="loading plugin \"io.containerd.internal.v1.shutdown\"..." runtime=io.containerd.rund.v2 type=io.containerd.internal.v1
time="2024-01-25T09:27:23.813347000+05:45" level=info msg="loading plugin \"io.containerd.ttrpc.v1.task\"..." runtime=io.containerd.rund.v2 type=io.containerd.ttrpc.v1
time="2024-01-25T09:27:23.814332000+05:45" level=info msg=CREATE request="id:\"pj140n50h4slphop5c5bsesuo\" bundle:\"/var/run/containerd/io.containerd.runtime.v2.task/moby/pj140n50h4slphop5c5bsesuo\" rootfs:{type:\"bind\" source:\"/private/d/vfs/yweyd7voyzvie1u7q6zwefsld\" options:\"rbind\"} stdout:\"/var/run/containerd/fifo/1956028784/pj140n50h4slphop5c5bsesuo-stdout\" stderr:\"/var/run/containerd/fifo/1956028784/pj140n50h4slphop5c5bsesuo-stderr\"" runtime=io.containerd.rund.v2
time="2024-01-25T09:27:23.850149000+05:45" level=info msg=CREATE_DONE runtime=io.containerd.rund.v2
time="2024-01-25T09:27:23.850586000+05:45" level=info msg=CONNECT request="id:\"pj140n50h4slphop5c5bsesuo\"" runtime=io.containerd.rund.v2
time="2024-01-25T09:27:23.850607000+05:45" level=info msg=CONNECT_DONE runtime=io.containerd.rund.v2
time="2024-01-25T09:27:23.851253000+05:45" level=info msg=CONNECT request="id:\"pj140n50h4slphop5c5bsesuo\"" runtime=io.containerd.rund.v2
time="2024-01-25T09:27:23.851278000+05:45" level=info msg=CONNECT_DONE runtime=io.containerd.rund.v2
time="2024-01-25T09:27:23.851305000+05:45" level=info msg=START request="id:\"pj140n50h4slphop5c5bsesuo\"" runtime=io.containerd.rund.v2
time="2024-01-25T09:27:23.851369000+05:45" level=info msg=WAIT request="id:\"pj140n50h4slphop5c5bsesuo\"" runtime=io.containerd.rund.v2
time="2024-01-25T09:27:23.851553000+05:45" level=info msg=START_DONE runtime=io.containerd.rund.v2
2024/01/25 09:27:26 traces export: Post "https://localhost:4318/v1/traces": dial tcp [::1]:4318: connect: connection refused

here's my dockerd log

cat dockerd.log
time="2024-01-25T08:25:46.700011000+05:45" level=info msg="Starting up"
time="2024-01-25T08:25:46.705407000+05:45" level=warning msg="cannot set sticky bit on socket /var/run/docker.sock under XDG_RUNTIME_DIR" error="homedir.StickRuntimeDirContents() is not supported on this system"
time="2024-01-25T08:25:46.710570000+05:45" level=warning msg="Failed to run [runc features]: \"\"" error="exec: \"runc\": executable file not found in $PATH"
time="2024-01-25T08:25:46.710686000+05:45" level=warning msg="Failed to run [runc features]: \"\"" error="exec: \"runc\": executable file not found in $PATH"
time="2024-01-25T08:25:46.768051000+05:45" level=info msg="Loading containers: start."
time="2024-01-25T08:25:46.811265000+05:45" level=info msg="Loading containers: done."
time="2024-01-25T08:25:47.304143000+05:45" level=error msg="Could not determine if daemon is containerized: Cannot detect if we are in container"
time="2024-01-25T08:25:47.304242000+05:45" level=warning msg="Could not get operating system version: Unsupported on generic unix"
time="2024-01-25T08:25:47.304307000+05:45" level=error msg="Could not read system memory info: platform and architecture is not supported"
time="2024-01-25T08:25:47.314145000+05:45" level=info msg="Docker daemon" commit=library-import graphdriver=vfs version=library-import
time="2024-01-25T08:25:47.314683000+05:45" level=info msg="Daemon has completed initialization"
time="2024-01-25T08:25:47.358967000+05:45" level=info msg="API listen on /var/run/docker.sock"
time="2024-01-25T08:39:04.376846000+05:45" level=warning msg="ResolvConfPath set to \"/private/d/containers/919ce64acd2bb22c82e827b6d4b44fcca99ae8c61b2af7dbaa793841ad80257c/resolv.conf\", but can't stat this filename (err = stat /private/d/containers/919ce64acd2bb22c82e827b6d4b44fcca99ae8c61b2af7dbaa793841ad80257c/resolv.conf: no such file or directory); skipping"
time="2024-01-25T08:39:04.377073000+05:45" level=warning msg="HostsPath set to \"/private/d/containers/919ce64acd2bb22c82e827b6d4b44fcca99ae8c61b2af7dbaa793841ad80257c/hosts\", but can't stat this filename (err = stat /private/d/containers/919ce64acd2bb22c82e827b6d4b44fcca99ae8c61b2af7dbaa793841ad80257c/hosts: no such file or directory); skipping"
time="2024-01-25T08:39:04.565714000+05:45" level=info msg="ignoring event" container=919ce64acd2bb22c82e827b6d4b44fcca99ae8c61b2af7dbaa793841ad80257c module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
time="2024-01-25T08:39:04.581854000+05:45" level=warning msg="failed to close stdin: task 919ce64acd2bb22c82e827b6d4b44fcca99ae8c61b2af7dbaa793841ad80257c not found: not found"
time="2024-01-25T09:00:10.205803000+05:45" level=info msg="Processing signal 'terminated'"
time="2024-01-25T09:00:10.211636000+05:45" level=info msg="Daemon shutdown complete"
time="2024-01-25T09:04:18.373900000+05:45" level=info msg="Starting up"
time="2024-01-25T09:04:18.454800000+05:45" level=warning msg="cannot set sticky bit on socket /var/run/docker.sock under XDG_RUNTIME_DIR" error="homedir.StickRuntimeDirContents() is not supported on this system"
time="2024-01-25T09:04:18.673328000+05:45" level=warning msg="Failed to run [runc features]: \"\"" error="exec: \"runc\": executable file not found in $PATH"
time="2024-01-25T09:04:18.673400000+05:45" level=warning msg="Failed to run [runc features]: \"\"" error="exec: \"runc\": executable file not found in $PATH"
time="2024-01-25T09:04:19.585861000+05:45" level=info msg="Loading containers: start."
time="2024-01-25T09:04:19.747467000+05:45" level=info msg="Loading containers: done."
time="2024-01-25T09:04:22.191786000+05:45" level=error msg="Could not determine if daemon is containerized: Cannot detect if we are in container"
time="2024-01-25T09:04:22.198518000+05:45" level=warning msg="Could not get operating system version: Unsupported on generic unix"
time="2024-01-25T09:04:22.204445000+05:45" level=error msg="Could not read system memory info: platform and architecture is not supported"
time="2024-01-25T09:04:22.254202000+05:45" level=info msg="Docker daemon" commit=library-import graphdriver=vfs version=library-import
time="2024-01-25T09:04:22.255703000+05:45" level=info msg="Daemon has completed initialization"
time="2024-01-25T09:04:22.466407000+05:45" level=info msg="API listen on /var/run/docker.sock"
time="2024-01-25T09:12:22.761891000+05:45" level=info msg="Processing signal 'terminated'"
time="2024-01-25T09:12:22.762265000+05:45" level=error msg="Failed to get event" error="rpc error: code = Unavailable desc = error reading from server: EOF" module=libcontainerd namespace=plugins.moby
time="2024-01-25T09:12:22.762290000+05:45" level=info msg="Waiting for containerd to be ready to restart event processing" module=libcontainerd namespace=plugins.moby
time="2024-01-25T09:12:22.762355000+05:45" level=error msg="Failed to get event" error="rpc error: code = Unavailable desc = error reading from server: EOF" module=libcontainerd namespace=moby
time="2024-01-25T09:12:22.762374000+05:45" level=info msg="Waiting for containerd to be ready to restart event processing" module=libcontainerd namespace=moby
time="2024-01-25T09:12:22.763893000+05:45" level=info msg="Daemon shutdown complete"
time="2024-01-25T09:13:29.254745000+05:45" level=info msg="Starting up"
time="2024-01-25T09:13:29.281097000+05:45" level=warning msg="cannot set sticky bit on socket /var/run/docker.sock under XDG_RUNTIME_DIR" error="homedir.StickRuntimeDirContents() is not supported on this system"
time="2024-01-25T09:13:29.388389000+05:45" level=warning msg="Failed to run [runc features]: \"\"" error="exec: \"runc\": executable file not found in $PATH"
time="2024-01-25T09:13:29.388732000+05:45" level=warning msg="Failed to run [runc features]: \"\"" error="exec: \"runc\": executable file not found in $PATH"
time="2024-01-25T09:13:29.682426000+05:45" level=info msg="Loading containers: start."
time="2024-01-25T09:13:29.711387000+05:45" level=info msg="Loading containers: done."
time="2024-01-25T09:13:30.328963000+05:45" level=error msg="Could not determine if daemon is containerized: Cannot detect if we are in container"
time="2024-01-25T09:13:30.329047000+05:45" level=warning msg="Could not get operating system version: Unsupported on generic unix"
time="2024-01-25T09:13:30.329519000+05:45" level=error msg="Could not read system memory info: platform and architecture is not supported"
time="2024-01-25T09:13:30.336537000+05:45" level=info msg="Docker daemon" commit=library-import graphdriver=vfs version=library-import
time="2024-01-25T09:13:30.336839000+05:45" level=info msg="Daemon has completed initialization"
time="2024-01-25T09:13:30.359915000+05:45" level=info msg="API listen on /var/run/docker.sock"
time="2024-01-25T09:14:48.110892000+05:45" level=error msg="failed to process event" container=qvksv6kdzhs42xd9p7kbkr90u error="could not find container qvksv6kdzhs42xd9p7kbkr90u: No such container: qvksv6kdzhs42xd9p7kbkr90u" event=create event-info="{qvksv6kdzhs42xd9p7kbkr90u qvksv6kdzhs42xd9p7kbkr90u 0 0 0001-01-01 00:00:00 +0000 UTC <nil>}" module=libcontainerd namespace=moby
time="2024-01-25T09:21:58.504365000+05:45" level=info msg="trying next host" error="failed to do request: Head \"https://registry-1.docker.io/v2/paxprz/python/manifests/3.8-slim-varicon1\": net/http: TLS handshake timeout" host=registry-1.docker.io spanID=813636592ebf0631 traceID=a5793f1351086c92901e4656a5d19239
time="2024-01-25T09:26:30.342254000+05:45" level=error msg="Failed to get event" error="rpc error: code = Unavailable desc = error reading from server: EOF" module=libcontainerd namespace=plugins.moby
time="2024-01-25T09:26:30.342471000+05:45" level=info msg="Waiting for containerd to be ready to restart event processing" module=libcontainerd namespace=plugins.moby
time="2024-01-25T09:26:30.342257000+05:45" level=error msg="Failed to get event" error="rpc error: code = Unavailable desc = error reading from server: EOF" module=libcontainerd namespace=moby
time="2024-01-25T09:26:30.342606000+05:45" level=info msg="Waiting for containerd to be ready to restart event processing" module=libcontainerd namespace=moby
time="2024-01-25T09:26:44.576669000+05:45" level=info msg="Processing signal 'terminated'"
time="2024-01-25T09:26:44.581092000+05:45" level=info msg="stopping event stream following graceful shutdown" error="<nil>" module=libcontainerd namespace=moby
time="2024-01-25T09:26:44.581204000+05:45" level=info msg="Daemon shutdown complete"
time="2024-01-25T09:26:44.581316000+05:45" level=info msg="stopping event stream following graceful shutdown" error="context canceled" module=libcontainerd namespace=plugins.moby
time="2024-01-25T09:26:45.701396000+05:45" level=info msg="Starting up"
time="2024-01-25T09:26:45.702506000+05:45" level=warning msg="cannot set sticky bit on socket /var/run/docker.sock under XDG_RUNTIME_DIR" error="homedir.StickRuntimeDirContents() is not supported on this system"
time="2024-01-25T09:26:45.703556000+05:45" level=warning msg="Failed to run [runc features]: \"\"" error="exec: \"runc\": executable file not found in $PATH"
time="2024-01-25T09:26:45.703574000+05:45" level=warning msg="Failed to run [runc features]: \"\"" error="exec: \"runc\": executable file not found in $PATH"
time="2024-01-25T09:26:45.745879000+05:45" level=info msg="Loading containers: start."
time="2024-01-25T09:26:45.753644000+05:45" level=info msg="Loading containers: done."
time="2024-01-25T09:26:46.016918000+05:45" level=error msg="Could not determine if daemon is containerized: Cannot detect if we are in container"
time="2024-01-25T09:26:46.016976000+05:45" level=warning msg="Could not get operating system version: Unsupported on generic unix"
time="2024-01-25T09:26:46.017292000+05:45" level=error msg="Could not read system memory info: platform and architecture is not supported"
time="2024-01-25T09:26:46.024323000+05:45" level=info msg="Docker daemon" commit=library-import graphdriver=vfs version=library-import
time="2024-01-25T09:26:46.024765000+05:45" level=info msg="Daemon has completed initialization"
time="2024-01-25T09:26:46.220390000+05:45" level=info msg="API listen on /var/run/docker.sock"
time="2024-01-25T09:27:23.851109000+05:45" level=error msg="failed to process event" container=pj140n50h4slphop5c5bsesuo error="could not find container pj140n50h4slphop5c5bsesuo: No such container: pj140n50h4slphop5c5bsesuo" event=create event-info="{pj140n50h4slphop5c5bsesuo pj140n50h4slphop5c5bsesuo 0 0 0001-01-01 00:00:00 +0000 UTC <nil>}" module=libcontainerd namespace=moby
slonopotamus commented 5 months ago

Hi. Please, make sure you're using latest versions of components. I am not reproducing operation not permitted: unknown with containerd 0.0.2 + dockerd 0.0.7 + rund 0.0.7.

bickkysahani commented 5 months ago

I have latest versions of these. containerd 0.0.2 + dockerd 0.0.7 + rund 0.0.7.

when I try to build a local project, it stucks on RUN pip install -r requirements.txt.

Screenshot 2024-01-28 at 11 50 46

here's my Dockerfile

# Pull base image
FROM python:3.8.17-slim-bullseye

# Set environment variables
ENV PIP_DISABLE_PIP_VERSION_CHECK 1
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1

# Set work directory
WORKDIR /react-django-auth/backend/

# Install dependencies
COPY ./requirements.txt .
RUN pip install -r requirements.txt

# Copy project
COPY . .

here's the docker compose

version: "3.9"

services:
  web:
    build: .
    tty: true
    command: python /react-django-auth/backend/manage.py runserver 0.0.0.0:8000
    restart: always
    container_name: web2
    volumes:
      - .:/react-django-auth/backend/
    ports:
      - 8000:8000
    depends_on:
      - db
    networks:
      - v-network

  db:
    image: postgis/postgis:11-2.5-alpine
    container_name: db2
    restart: always
    volumes:
      - ./_postgres_data:/var/lib/postgresql/data/
    ports:
      - 5432:5432
    networks:
      - v-network
    environment:
      - "POSTGRES_HOST_AUTH_METHOD=trust"
    healthcheck:
      test: ["CMD-SHELL", "pg_isready"]
      interval: 5s
      timeout: 5s
      retries: 5

networks:
  v-network:
    external: false