Skip to content
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

Multiple Error Docker VPS Version #1

Open
MrTheSkream opened this issue Dec 19, 2018 · 9 comments
Open

Multiple Error Docker VPS Version #1

MrTheSkream opened this issue Dec 19, 2018 · 9 comments

Comments

@MrTheSkream
Copy link

Hello,

I currently have several errors on the docker version of OpenMPTCPRouter-VPS.
Here are the log captures as well as configuration files.

Error :

Files Config :

Specifications

  • OpenMPTCProuter version: openmptcprouter v0.44.5 r7416-50789acf4e
  • OpenMPTCProuter VPS version: docker-openmptcprouter-vps
  • OpenMPTCProuter platform: RPI3 / Dedicated Server With Dedian 9 Stretch
@Ysurac
Copy link
Owner

Ysurac commented Dec 19, 2018

The docker version is in an alpha state.
You must have a MPTCP enabled kernel.

@lars18th
Copy link

You must have a MPTCP enabled kernel.

Perhaps using "diuid" (https://github.com/weber-software/diuid) you can run it in a host without a MPTCP enabled kernel.

The concept is simple: a Docker container running inside a UML (with a custom kernel) packaged inside a Docker image.

So, if you modificate the kernel compiled for "diuid" then you can "enable" MPTCP inside the docker image.

About the performance, it will be impacted. But, if it works, then it can be a solution for running it inside standard docker hosts. Futhermore, the networking connection between the inner and outher dockers needs to be improved (at time it uses an SSH reverse forward). We can study how to improve it if this way will be used with the Docker-OMR-VPS.

Regards.

@lars18th
Copy link

Hi @Ysurac ,

And another option (perhaps with more performance) is the "Runq" project:
https://github.com/gotoz/runq

It uses KVM/Qemu to run docker images, so it can be fast if the host has a kernel with KVM module support. Futhermore it can use a custom kernel (read about /var/lib/runq/qemu in https://github.com/gotoz/runq#developing-runq) and works inside a VM (nested VM).

However, in fact this isn't a real docker image. So it runs as a regular process in the host.

I hope it helps.

@mstrolo
Copy link

mstrolo commented Apr 30, 2022

what do I get from running it on a docker?
I can make it work for more than 1 client?

@SpectroHA
Copy link

SpectroHA commented Aug 30, 2022

what do I get from running it on a docker? I can make it work for more than 1 client?

I was hoping to run it as a container vs my current virtual machine in esxi because updating a virtual machine is painful. As a container the configuration can be mapped allowing the container to be redeployed with the latest code without the configuration needing to be manually exported and imported each time.
Mind you, that's not what makes virtual machine updating painful. That's painful because to update requires installing a new virtual machine from OVA to replace the prior one (this is what docker excels at doing rapidly) and then importing your exported config. The imported config however tends to also write mac-address information to the interface configuration, so a new VM gets new mac addresses and as soon as you import your config you've nuked the network setup with no good way to resolve it. So you have to unpack the backup tar.gz, edit the network information in the backup to remove the mac address option, and re-pack it.

@lars18th
Copy link

lars18th commented Sep 4, 2022

Hi @seijirou302 ,

I agree with you! The current implementation of the OMR is painful if you aren't using the same configuration of the develper: 1 hardware router for your entire LAN and a VPS. From my point of view a "containerized" version of both (router and VPS) will be more confortable, user-friendly and easy to update. I hope @Ysurac will want to follow in this direction in the future.

Any way, thank you @Ysurac for this useful project! 😉

@Ysurac
Copy link
Owner

Ysurac commented Sep 4, 2022

Container can be used only if host kernel support MPTCP. If host kernel is patched (or already have MPTCP support enabled for kernel >= 5.15, only BBR2 will be missing), should not be difficult to dockerize.

@lars18th
Copy link

lars18th commented Sep 4, 2022

Container can be used only if host kernel support MPTCP. If host kernel is patched (or already have MPTCP support enabled for kernel >= 5.15, only BBR2 will be missing), should not be difficult to dockerize.

I understand the requirment of the patched kernel. However, using a Virtual Machine for the host, then the Docker module could work directly. So, are you interested on support this environment?

@SpectroHA
Copy link

SpectroHA commented Sep 4, 2022 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants