-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug] Cannot run Docker inside MicroVM #3476
Comments
Thank you for letting us know. We will look into this. |
Hi @WeeJeWel This does not look to be related to Firecracker but rather a general OS error where some additional setup might be needed. However, seems that that the "bridge-utils" package needs to be installed as a dependency of docker. Did you do that? Can you check what |
Thank you for replying @dianpopa. I've followed the Getting Started, downloaded kernel and rootfs. # Set up networking
ip addr add 172.16.0.2/24 dev eth0
ip link set eth0 up
ip route add default via 172.16.0.1 dev eth0
echo "nameserver 8.8.8.8" > /etc/resolv.conf
# Set up apt
mkdir -p /var/lib/dpkg/{info,alternatives}
touch /var/lib/dpkg/status
mkdir /var/lib/dpkg/updates/
apt update
DEBIAN_FRONTEND=noninteractive apt-get -yq install apt-utils
apt install -y iputils-ping net-tools
# Try bridge module
$ modinfo bridge
-bash: modinfo: command not found
$ apt install kmod
$ modinfo bridge
modinfo: ERROR: Module alias bridge not found.
$ apt install bridge-utils
$ modinfo bridge
modinfo: ERROR: Module alias bridge not found.
$ reboot
$ modinfo bridge
modinfo: ERROR: Module alias bridge not found.
$ modprobe bridge
modprobe: FATAL: Module bridge not found in directory /lib/modules/4.14.174+
$ uname -a
Linux ubuntu-fc-uvm 4.14.174+ #14 SMP Mon Nov 23 20:44:24 UTC 2020 aarch64 aarch64 aarch64 GNU/Linux Unfortunately I don't know how to get the bridge module to load. By the way, |
Firecracker's guest configs do not allow for loadable modules, that is why I spent some time replicating this and it seems that some modules needed to be compiled into the kernel. More specifically, Also I needed to do this about iptables:
I also discovered later that 4.14 has some GIve it a try and let me know if this also works for you. |
@dianpopa That works! 🎉 You're an absolute wizard, thank you! |
hey @dianpopa can you share the kernel config or the script that you used to build that one? I would like to build one but for an x86_64, and try to run on ubuntu 18 and 20, thanks! |
Hi @dianpopa, do you happen to have the kernel built for x86_64? |
Hi @felipecruz91 and @chinchaun Unfortunately I do not have an x86_64 docker enabled kernel yet. Let me look for the config I used for building the arm guest kernel and get back to you. Thanks! |
You can find a working x86_64 guest kernel here: https://s3.amazonaws.com/spec.ccfc.min/img/quickstart_guide/x86_64/kernels/vmlinux-5.10.bin. The working config is actually the one from our resources. Let me know if this works. |
This worked, thanks for sharing this kernel image :) |
this is not working for me. I tried with firecracker 1.9. is there a specific version it is compatible with? |
The latest CI kernel supports everything needed to run Docker on the provided Ubuntu image, see #4791 |
The Docker service does not start inside a MicroVM.
To Reproduce
Expected behaviour
The Docker service should start, and I should be able to run
docker run hello-world
.Environment
Checks
The text was updated successfully, but these errors were encountered: