All Projects → jenssegers → Captain

jenssegers / Captain

⚓️ Easily start and stop docker compose projects

Programming Languages

go
31211 projects - #10 most used programming language

Captain

Build Status

Easily start and stop docker compose projects with captain, arrrrr.

Installation

Binaries can be manually downloaded from GitHub releases: https://github.com/jenssegers/captain/releases

OSX

curl -L https://github.com/jenssegers/captain/releases/download/0.3.3/captain-osx > /usr/local/bin/captain && chmod +x /usr/local/bin/captain

Linux

curl -L https://github.com/jenssegers/captain/releases/download/0.3.3/captain-linux > /usr/local/bin/captain && chmod +x /usr/local/bin/captain

Windows (untested)

Download captain.exe via https://github.com/jenssegers/captain/releases/download/0.3.3/captain.exe

Usage

Captain searches for docker-compose projects in your $HOME folder and allows you to start and stop those projects by matching the project's directory name.

Starting a project

If I have a folder called my-secret-project that contains a docker-compose.yml file, I can start that project using:

captain start my-secret-project

Captain will also do partial matching of the project name, so that you can also use:

captain start secret

Captain is smart, and does fuzzy matching:

captain start scrt

Stopping a project

Stopping a project works similarly:

captain stop secret

Restarting a project

Restart a project using:

captain restart my-secret-project

Viewing project logs

View logs of a project using:

captain logs my-secret-project

Listing projects

You can see all managable projects using:

captain list

Stopping all containers

To quickly stop all running docker containers, use:

captain abandon

Executing command in a service

Executing command in a running service container

captain exec <project> <service> <command>
captain exec my-secret-project web bash

Executing command as a new service container

captain run <project> <service> <command>
captain exec my-secret-project cli bash

Tweak the running

You can tweak some behaviour through some environmental variables:

  • CAPTAIN_ROOT: the starting directory from where the docker-compose are searched (default: home dir of the user)
  • CAPTAIN_DEPTH: the number of subdirectory where to search the docker-compose.yml files (default: 5)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].