carpentries-incubator / docker-introduction

Reproducible Computational Environments using Containers
https://carpentries-incubator.github.io/docker-introduction/
Other
42 stars 48 forks source link

Docker Desktop licence, and non-admin computers #177

Open amandamiotto opened 2 years ago

amandamiotto commented 2 years ago

Hey team,

More of a discussion than an issue.

Has anyone taught this for an institute that limits admin rights to computers? Aka student laptops? I know there's workarounds to the admin rights issue but they are pretty technical.

What are people's thought on the docker desktop licence change? I know you can use it to learn docker, but after that, unless you're specifically working on open source software, you now need a licence? Do people go Rancher desktop instead?

jcohen02 commented 2 years ago

Hi @amandamiotto. My understanding is that if you have a computer where you have no admin rights and Docker has not been previously installed by an administrator, then getting Docker working on the system without admin is not really an option.

One alternative would be to log in to a remote system with Docker installed (e.g. via SSH or Virtual Desktop) but due to Docker's security model, as you may be aware, it's not generally installed on shared systems. A possible workaround given available funding/resources could be provisioning a group of cloud nodes with Docker installed and assigning one per student - students would then remotely connect to their assigned node from their own computer. I haven't thought this option through in detail, it would obviously need thorough testing and consideration of possible security issues or other technical challenges but I think it could be a workable option.

In the unlikely event that the systems without admin already have virtualisation software such as VirtualBox installed, I guess that could also be a solution, running a Linux VM and then installing Docker within it.

Perhaps you've already seen this but re the licensing changes, there is a helpful FAQ page.

Re using something like Rancher instead - I'm not really familiar with Rancher so my understanding maybe incorrect but I was under the impression that this is more of a container management/orchestration tool along the lines of Docker Compose or Kubernetes. However, in the case of Rancher I think it sits at an even higher level, managing groups of containers that are in-turn orchestrated/managed by something like Kubernetes. On this basis, you still need an underlying container engine such as Docker, or potentially some sort of cloud based container service, to actually run the containers.

colinsauze commented 2 years ago

When I run this workshop I have a google cloud VM with docker pre-installed on standby for anybody who can't get docker installed. Running a VM with 2 cores, 4GB of RAM and 10GB of disk (E2-medium) costs $0.03 per hour, so not too expensive to run for the duration of a workshop. You can also get educational credits from Google if you tell them you're teaching a course in a public institution that uses their cloud products.

sstevens2 commented 1 year ago

@colinsauze would you be interested in adding your suggestion to the instructor notes as a backup setup for instructors?

colinsauze commented 1 year ago

Yes, but I'm not going to have time to write it up before new year.