Comments (5)
Good point. The UEFI.fd
file used to ship with Docker-for-Mac (d4m), but it hasn't in quite some time. Docker4Mac does not, I believe, use hyperkit anymore; instead it uses virtualization.framework.
To be fair, that docker-for-mac.md
is far from what you actually get in the d4m desktop. Most of that is closed-source, except for the docker client and docker engine. All of the desktop stuff around it - including the build of the VM - is closed source, even as it uses OSS tools (like linuxkit).
We may just need to remove the example.
from linuxkit.
Hi @deitch thanks you for your answer.
So that mean that not possible to modify correctly the linuxkit VM under Docker Desktop ?
I'm block by the networking restrictions on the original version. I would like to made direct bridge between interface of MacOS and interface of linux Kit. So that impossible ??
My goal is to use IPVLAN to give IP from my LAN to my container:
Impossible ? 🥲
Or any workaround any possible functionality to do it ?
That lock a lot of potential of docker networking.
from linuxkit.
You could do docker run --network=host
, but that doesn't give unique IPs to each container; it just runs processes on the host. The other docker alternative is bridge (the default), where each container gets its own IP, but it is bridged.
You are looking for something in the middle: each container is on the host network, but gets its own IP, hence IPVLAN. However, even if docker supported it, I do not think that the docker VM even sits on the host network. When you do --network=host
, it ends up connecting it through specifically for that container. I do not recall the details exactly, worth asking on the docker slack workspace.
I don't think you can get this out of docker as it is configured today. It just isn't one of the docker options. If you work at a lower level, you could:
- Launch a VM with network connected through to the host (assuming you can do that; I have never tried with virtualization.framework, so I do not know how it does or does not enable network pass-through)
- start a container
- give it its own network namespace
- use ipvlan to give each one its own IP.
You probably could build something like that using linuxkit, but it isn't just a slight modification of docker.yml
. You also could look at lima
from linuxkit.
Host mode didn't work on Mac M1.. So that not possible.
The only thing which works is port forward.
from linuxkit.
Oh you are right. I wasn't thinking about that, even as I wrote above about the differing network stack.
from linuxkit.
Related Issues (20)
- Use `examples/docker-for-mac.md` with arm64?
- enable IMDSv2 for linuxkit
- service restart doesn't connect to memlogd system
- nat process oom-killed HOT 2
- [improvement sugestion] fail build fast for -dir (or create it) HOT 1
- Building a qemu image with a JVM container doesn't work.
- libguestfs: error: qemu-img: disk.qcow: qemu-img killed by signal 5 (Trace/breakpoint trap). on Apple Silicon HOT 6
- Max size of image HOT 4
- Landlock support HOT 1
- Build fails with no useful error message when using iso-bios format on arm64 architecture HOT 3
- enable CONFIG_FANOTIFY_ACCESS_PERMISSIONS
- Missing updated versions of poweroff package HOT 1
- Not able to use locally built docker images with `linuxkit build linuxkit.yml` command HOT 1
- No tagged images on dockerhub since v0.8 HOT 4
- Wrong EFI file in iso, qcow and raw efi images when cross-building
- Docker for Mac Example - Virtualization Framework
- Failed to build init tarball HOT 2
- kernel BUG: io_uring openat triggers audit reference count underflow HOT 1
- Please enable the VRF kernel module in linuxkit
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from linuxkit.