Skip to content

devsy-org/devsy-provider-dockerless

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dockerless Provider for Devsy

Dockerless provider is useful for situations where you don't have Docker or Podman installed, you're on Linux, and you still want to use Devcontainers.

Dockerless provider will use RootlessKit for rootless containers (and unshare in case you're already root) to create namespaces. It will use Crane to pull and manage images.

All dependencies are self-contained in the provider binary.

The target is to have simple, reasonably isolated and easy to use container alternatives, without external runtimes.

Useful use-cases are easy nested containers or slim, no-deps images.

Getting started

The provider is available for auto-installation using:

devsy provider add dockerless
devsy provider use dockerless

Follow the on-screen instructions to complete the setup.

Needed variables will be:

  • TARGET_DIR

TARGET_DIR is where all the images, containers and state are stored. You only need to specify where you want all of the dockerless data to be stored.

Run it

After the initial setup, just use:

devsy workspace up .

Run in a container

To run in a container, we need CAP_SYS_ADMIN (needed for the unshare, mount and pivot_root syscalls). To have custom networking we also need access to /dev/net/tun.

We DO NOT require root. A nice way to run it is:

docker run --rm -ti --cap-add CAP_SYS_ADMIN --device /dev/net/tun --user 1000:1000 build-alpine:latest

Using the image in the image folder.

Releases

Packages

Contributors

Languages