On Fri, Feb 1, 2019 at 10:31 AM Coy, Russell <[email protected]> wrote: > > Hello all, > > I am trying to add Docker to an image built under Yocto and hence am > attempting to use the meta-virtualization layer. > > The target processor is an NXP imx8mq evk board and I am basing everything on > the NXP BSP v4.9.51, which is based on Yocto morty. > > I have git cloned the morty branch of the meta-virtualization layer to the > top level of our Yocto project and added the layer to the build/bblayers.conf > file and added DISTRO_FEATURES_append = " virtualization" to the > build/local.conf file. I have a custom layer with a custom image (based on > core-image) that includes docker (i.e. IMAGE_INSTALL += " docker”). A > complete re-build of the image using bitbake is successful, and when the > image is transferred to the target (on an sd card) and booted, the docker > daemon starts up OK. However if I then try running “docker run hello-world” > to test out the installation, it will pull the hello-world image, but fails > with a daemon error: > > Unable to find image 'hello-world:latest' locally > > latest: Pulling from library/hello-world > > 3b4173355427: Pulling fs layer > > 3b4173355427: Verifying Checksum > > 3b4173355427: Download complete > > 3b4173355427: Pull complete > > Digest: > sha256:2557e3c07ed1e38f26e389462d03ed943586f744621577a99efb77324b0fe535 > > Status: Downloaded newer image for hello-world:latest > > docker: Error response from daemon: operation not supported.
This is what you need to focus on. Run docker with '--debug' review logs... you need to determine what operation is not supported. If after doing this you still can't determine what is wrong I usually recommend you get a known working configuration up and running which you can compare against. In this case configure another build, setup the bblayers.conf and setup your local.conf with --- MACHINE = "qemux86-64" DISTRO_FEATURES_append = " virtualization" IMAGE_INSTALL_append = "docker kernel-module-xt-conntrack kernel-module-nf-nat kernel-module-xt-addrtype" KERNEL_MODULE_AUTOLOAD += "xt_conntrack" KERNEL_MODULE_AUTOLOAD += "xt_addrtype" DISTRO_FEATURES_append = " systemd" DISTRO_FEATURES_BACKFILL_CONSIDERED += "sysvinit" VIRTUAL-RUNTIME_init_manager = "systemd" VIRTUAL-RUNTIME_initscripts = "systemd-compat-units" --- Run the image in QEMU and you should be able to run get the hello world container running. Then you can compare your non-working case with the working case. Mark > > See 'docker run --help'. > > Other images give similar results (e.g. busybox or alpine). > > It seems that the pull works, and images are downloaded OK, but they do not > run. > > I’d be grateful if you have any advice on how to get this branch of docker > working? > > For information: > > “docker info” gives: > > Containers: 0 > > Running: 0 > > Paused: 0 > > Stopped: 0 > > Images: 1 > > Server Version: 1.12.5 > > Storage Driver: overlay > > Backing Filesystem: extfs > > Logging Driver: json-file > > Cgroup Driver: cgroupfs > > Plugins: > > Volume: local > > Network: host bridge overlay null > > Swarm: inactive > > Runtimes: runc > > Default Runtime: runc > > Security Options: > > Kernel Version: 4.9.51-imx_4.9.51_imx8m_ga+g6df7474 > > Operating System: NXP i.MX Release Distro 4.9.51-mx8-ga (morty) > > OSType: linux > > Architecture: aarch64 > > CPUs: 4 > > Total Memory: 2.928 GiB > > Name: Test-imx8 > > ID: L4G3:4SLL:UO75:25FS:6OO6:NOPG:SGF7:DXVC:GN5P:7DZK:4O2D:3K4L > > Docker Root Dir: /var/lib/docker > > Debug Mode (client): false > > Debug Mode (server): false > > Registry: https://index.docker.io/v1/ > > Insecure Registries: > > http://localhost:5000 > > 127.0.0.0/8 > > Downloading and running “check-config.sh” gives: > > info: reading kernel config from /proc/config.gz ... > > Generally Necessary: > > - cgroup hierarchy: properly mounted [/sys/fs/cgroup] > > - CONFIG_NAMESPACES: enabled > > - CONFIG_NET_NS: enabled > > - CONFIG_PID_NS: enabled > > - CONFIG_IPC_NS: enabled > > - CONFIG_UTS_NS: enabled > > - CONFIG_CGROUPS: enabled > > - CONFIG_CGROUP_CPUACCT: enabled > > - CONFIG_CGROUP_DEVICE: enabled > > - CONFIG_CGROUP_FREEZER: missing > > - CONFIG_CGROUP_SCHED: enabled > > - CONFIG_CPUSETS: enabled > > - CONFIG_MEMCG: enabled > > - CONFIG_KEYS: enabled > > - CONFIG_VETH: enabled (as module) > > - CONFIG_BRIDGE: enabled (as module) > > - CONFIG_BRIDGE_NETFILTER: enabled (as module) > > - CONFIG_NF_NAT_IPV4: enabled (as module) > > - CONFIG_IP_NF_FILTER: enabled (as module) > > - CONFIG_IP_NF_TARGET_MASQUERADE: enabled (as module) > > - CONFIG_NETFILTER_XT_MATCH_ADDRTYPE: enabled (as module) > > - CONFIG_NETFILTER_XT_MATCH_CONNTRACK: enabled (as module) > > - CONFIG_NETFILTER_XT_MATCH_IPVS: missing > > - CONFIG_IP_NF_NAT: enabled (as module) > > - CONFIG_NF_NAT: enabled (as module) > > - CONFIG_NF_NAT_NEEDED: enabled > > - CONFIG_POSIX_MQUEUE: enabled > > Optional Features: > > - CONFIG_USER_NS: enabled > > - CONFIG_SECCOMP: enabled > > - CONFIG_CGROUP_PIDS: enabled > > - CONFIG_MEMCG_SWAP: enabled > > - CONFIG_MEMCG_SWAP_ENABLED: enabled > > (cgroup swap accounting is currently enabled) > > - CONFIG_BLK_CGROUP: enabled > > - CONFIG_BLK_DEV_THROTTLING: missing > > - CONFIG_IOSCHED_CFQ: enabled > > - CONFIG_CFQ_GROUP_IOSCHED: missing > > - CONFIG_CGROUP_PERF: enabled > > - CONFIG_CGROUP_HUGETLB: enabled > > - CONFIG_NET_CLS_CGROUP: missing > > - CONFIG_CGROUP_NET_PRIO: missing > > - CONFIG_CFS_BANDWIDTH: missing > > - CONFIG_FAIR_GROUP_SCHED: enabled > > - CONFIG_RT_GROUP_SCHED: missing > > - CONFIG_IP_NF_TARGET_REDIRECT: missing > > - CONFIG_IP_VS: missing > > - CONFIG_IP_VS_NFCT: missing > > - CONFIG_IP_VS_PROTO_TCP: missing > > - CONFIG_IP_VS_PROTO_UDP: missing > > - CONFIG_IP_VS_RR: missing > > - CONFIG_EXT3_FS: enabled > > - CONFIG_EXT3_FS_XATTR: missing > > - CONFIG_EXT3_FS_POSIX_ACL: missing > > - CONFIG_EXT3_FS_SECURITY: missing > > (enable these ext3 configs if you are using ext3 as backing filesystem) > > - CONFIG_EXT4_FS: enabled > > - CONFIG_EXT4_FS_POSIX_ACL: enabled > > - CONFIG_EXT4_FS_SECURITY: missing > > enable these ext4 configs if you are using ext4 as backing filesystem > > - Network Drivers: > > - "overlay": > > - CONFIG_VXLAN: missing > > Optional (for encrypted networks): > > - CONFIG_CRYPTO: enabled > > - CONFIG_CRYPTO_AEAD: enabled > > - CONFIG_CRYPTO_GCM: enabled > > - CONFIG_CRYPTO_SEQIV: enabled > > - CONFIG_CRYPTO_GHASH: enabled > > - CONFIG_XFRM: enabled > > - CONFIG_XFRM_USER: missing > > - CONFIG_XFRM_ALGO: missing > > - CONFIG_INET_ESP: missing > > - CONFIG_INET_XFRM_MODE_TRANSPORT: enabled > > - "mipvlan": > > - CONFIG_IPVLAN: missing > > - "macvlan": > > - CONFIG_MACVLAN: enabled (as module) > > - CONFIG_DUMMY: missing > > - "ftp,tftp client in container": > > - CONFIG_NF_NAT_FTP: missing > > - CONFIG_NF_CONNTRACK_FTP: missing > > - CONFIG_NF_NAT_TFTP: missing > > - CONFIG_NF_CONNTRACK_TFTP: missing > > - Storage Drivers: > > - "aufs": > > - CONFIG_AUFS_FS: missing > > - "btrfs": > > - CONFIG_BTRFS_FS: enabled (as module) > > - CONFIG_BTRFS_FS_POSIX_ACL: enabled > > - "devicemapper": > > - CONFIG_BLK_DEV_DM: missing > > - CONFIG_DM_THIN_PROVISIONING: missing > > - "overlay": > > - CONFIG_OVERLAY_FS: enabled (as module) > > - "zfs": > > - /dev/zfs: missing > > - zfs command: missing > > - zpool command: missing > > Limits: > > - /proc/sys/kernel/keys/root_maxkeys: 1000000 > > “docker –version” gives: > > Docker version 1.12.5, build 7392c3b > > From the config output, I see that some variables are not enabled. Could this > be an issue? > > Kind regards, > > Russell > > > > Follow Us: LinkedIn | Twitter | Facebook > > Roke Manor Research Limited, Romsey, Hampshire, SO51 0ZN, United Kingdom. > Part of the Chemring Group. Registered in England & Wales. Registered No: > 00267550. The information contained in this e-mail and any attachments is > proprietary to Roke Manor Research Limited and must not be passed to any > third party without permission. This communication is for information only > and shall not create or change any contractual relationship. > www.roke.co.uk > > ________________________________ > -- > _______________________________________________ > meta-virtualization mailing list > [email protected] > https://lists.yoctoproject.org/listinfo/meta-virtualization -- _______________________________________________ meta-virtualization mailing list [email protected] https://lists.yoctoproject.org/listinfo/meta-virtualization
