Welcome to wharfrat’s documentation!

Introduction

wharfrat is intended to make it easy and convenient to use a development environment in a docker container. The benefits of this are:

  • Simple: A new development environment is setup with a single simple command, meaning new team members are ready to go immediately.
  • Shared: Everyone with access to the project (and docker) has access to the development environment.
  • Controlled: Everyone gets a development environment created from the same image - no more “works for me” issues.
  • Versioned: The configuration is version controlled, meaning you get the development environment that matches the code branch you are working on.

Installation

Basic Usage

Configuration

Accessing Containers

Exposing Commands

It is possible to use the wr-exec command to expose commands from inside a container to the host. This is normally done by creating an executable config file with a #! line that invokes wr-exec. For example, if ./test contains:

#!/usr/bin/env wr-exec

project = "/path/to/project/file"
command = ["command", "arg1"]

Then, running ./test arg2 will run the command command arg1 arg2 in the container for the default crate defined in the wharfrat project file at /path/to/project/file.

Examples

Indices and tables