Skip to main content

docker_deno

A fully typed, async-first docker client library for Deno.

Installation

import Docker from "https://deno.land/x/docker_deno/mod.ts"

Add this to your deno.json file, to upgrade version just edit the version here and use the above url in your code.

{
  "imports": {
    "https://deno.land/x/docker_deno/": "https://deno.land/x/docker_deno@v0.3.1/"
  }
}

Usage

Simple example

import Docker from "https://deno.land/x/docker_deno/mod.ts"

const docker = new Docker("/var/run/docker.sock");
const container = await docker.containers.create("my_container", {
  Image: "alpine",
  Cmd: ["ls"],
  StopTimeout: 10,
});
await docker.containers.start(container.Id);

Manipulating containers

// Fetch the list of currently running containers
const containers = await docker.containers.list({all: true});

// Create a container
const container = await docker.containers.create("my_container", {
  Image: "alpine",
  Cmd: ["echo", "hello"],
});

// Start the container
await docker.containers.start(container.Id);

// Stop a container
await docker.containers.stop(container.Id);

// Kill a container
await docker.containers.kill(container.Id, "SIGKILL");

// Restart a container
await docker.containers.restart(container.Id);

// Wait until the container has finished running
await docker.container.wait(container.Id);

// Delete a container
await docker.containers.rm(container.Id);

Images

// List images 
await docker.images.list(ImageListOptions)

// Create Image
await docker.images.create('ubuntu', {"fromImage": "ubuntu", tag: 'latest'})

API reference

Containers

Image