chroot 内で docker を実行する方法

chroot 内で docker を実行する方法

私はchroot環境のarm64 android phoneにdebian Stretchをインストールしました。私は以下の手順に従ってdocker-ceをインストールしました。ここ

docker を起動すると::systemctl start docker

このエラーを返します::Running in chroot, ignoring request.

service docker statusショー を使用して確認する[FAIL] Docker is not running ... failed!

を使用して実行すると dockerd、このエラーが表示されます::

INFO[2018-02-05T22:15:35.631735524+05:30] libcontainerd: started new docker-containerd process  pid=23047
INFO[0000] starting containerd                           module=containerd revision=89623f28b87a6004d4b785663257362d1658a729 version=v1.0.0
INFO[0000] setting subreaper...                          module=containerd
INFO[0000] changing OOM score to -500                    module=containerd
INFO[0000] loading plugin "io.containerd.content.v1.content"...  module=containerd type=io.containerd.content.v1
INFO[0000] loading plugin "io.containerd.snapshotter.v1.btrfs"...  module=containerd type=io.containerd.snapshotter.v1
WARN[0000] failed to load plugin io.containerd.snapshotter.v1.btrfs  error="path /var/lib/docker/containerd/daemon/io.containerd.snapshotter.v1.btrfs must be a btrfs filesystem to be used with the btrfs snapshotter" module=containerd
INFO[0000] loading plugin "io.containerd.snapshotter.v1.overlayfs"...  module=containerd type=io.containerd.snapshotter.v1
INFO[0000] loading plugin "io.containerd.metadata.v1.bolt"...  module=containerd type=io.containerd.metadata.v1
WARN[0000] could not use snapshotter btrfs in metadata plugin  error="path /var/lib/docker/containerd/daemon/io.containerd.snapshotter.v1.btrfs must be a btrfs filesystem to be used with the btrfs snapshotter" module="containerd/io.containerd.metadata.v1.bolt"
INFO[0000] loading plugin "io.containerd.differ.v1.walking"...  module=containerd type=io.containerd.differ.v1
INFO[0000] loading plugin "io.containerd.gc.v1.scheduler"...  module=containerd type=io.containerd.gc.v1
INFO[0000] loading plugin "io.containerd.grpc.v1.containers"...  module=containerd type=io.containerd.grpc.v1
INFO[0000] loading plugin "io.containerd.grpc.v1.content"...  module=containerd type=io.containerd.grpc.v1
INFO[0000] loading plugin "io.containerd.grpc.v1.diff"...  module=containerd type=io.containerd.grpc.v1
INFO[0000] loading plugin "io.containerd.grpc.v1.events"...  module=containerd type=io.containerd.grpc.v1
INFO[0000] loading plugin "io.containerd.grpc.v1.healthcheck"...  module=containerd type=io.containerd.grpc.v1
INFO[0000] loading plugin "io.containerd.grpc.v1.images"...  module=containerd type=io.containerd.grpc.v1
INFO[0000] loading plugin "io.containerd.grpc.v1.leases"...  module=containerd type=io.containerd.grpc.v1
INFO[0000] loading plugin "io.containerd.grpc.v1.namespaces"...  module=containerd type=io.containerd.grpc.v1
INFO[0000] loading plugin "io.containerd.grpc.v1.snapshots"...  module=containerd type=io.containerd.grpc.v1
INFO[0000] loading plugin "io.containerd.monitor.v1.cgroups"...  module=containerd type=io.containerd.monitor.v1
INFO[0000] loading plugin "io.containerd.runtime.v1.linux"...  module=containerd type=io.containerd.runtime.v1
INFO[0000] loading plugin "io.containerd.grpc.v1.tasks"...  module=containerd type=io.containerd.grpc.v1
INFO[0000] loading plugin "io.containerd.grpc.v1.version"...  module=containerd type=io.containerd.grpc.v1
INFO[0000] loading plugin "io.containerd.grpc.v1.introspection"...  module=containerd type=io.containerd.grpc.v1
INFO[0000] serving...                                    address="/var/run/docker/containerd/docker-containerd-debug.sock" module="containerd/debug"
INFO[0000] serving...                                    address="/var/run/docker/containerd/docker-containerd.sock" module="containerd/grpc"
INFO[0000] containerd successfully booted in 0.032191s   module=containerd
ERRO[2018-02-05T22:15:35.833079554+05:30] 'overlay' not found as a supported filesystem on this host. Please ensure kernel is new enough and has overlay support loaded.
ERRO[2018-02-05T22:15:35.846402107+05:30] 'overlay' not found as a supported filesystem on this host. Please ensure kernel is new enough and has overlay support loaded.
ERRO[2018-02-05T22:15:35.850080389+05:30] devmapper: Udev sync is not supported. This will lead to data loss and unexpected behavior. Install a more recent version of libdevmapper or select a different storage driver. For more information, see https://docs.docker.com/engine/reference/commandline/dockerd/#storage-driver-options
INFO[2018-02-05T22:15:35.887075601+05:30] Graph migration to content-addressability took 0.00 seconds
WARN[2018-02-05T22:15:35.889037268+05:30] Your kernel does not support cgroup memory limit
WARN[2018-02-05T22:15:35.889872633+05:30] Your kernel does not support cgroup cfs period
WARN[2018-02-05T22:15:35.890405497+05:30] Your kernel does not support cgroup cfs quotas
WARN[2018-02-05T22:15:35.891107633+05:30] Unable to find blkio cgroup in mounts
WARN[2018-02-05T22:15:35.891733726+05:30] mountpoint for pids not found
Error starting daemon: Devices cgroup isn't mounted

Android フォンの chroot 内でこれを実行するにはどうすればよいですか?

答え1

chroot で実行しているときにシステムが完全に起動しないため、docker を起動できませんでした。サービスを管理するプロセスが実行されていないため、systemctlコマンドは起動要求を無視します。

docker デーモンを直接起動することをお勧めします: dockerd [arguments]。 のようなプロセス マネージャーを使用することもできますsupervisord

関連情報