fugu

package module
v1.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 8, 2015 License: MIT Imports: 21 Imported by: 0

README

What is fugu?

  • fugu is a convenience wrapper around docker commands
  • fugu loads config from a fugu.yml file and merges these arguments with command line flags.

Example

# fugu.yml (maybe stored next to Dockerfile)
image:  ubuntu
name:   my-ubuntu
publish:
  - 8080:80
$ fugu run --detach # runs ...
docker run --detach --name=my-ubuntu --publish=8080:80 ubuntu

Fugu commands include: build, run, exec, destroy, push, pull, images.

All commands and their usage and example fugu.yml files.

Installation

# Mac OS X
curl -L https://github.com/mattes/fugu/releases/download/v1.1.1/fugu.v1.1.1.darwin.x86_64.tar.gz | tar xvz
mv fugu.v1.1.1.darwin.x86_64 /usr/local/bin/fugu
chmod +x /usr/local/bin/fugu

# Linux
curl -L https://github.com/mattes/fugu/releases/download/v1.1.1/fugu.v1.1.1.linux.x86_64.tar.gz | tar xvz
mv fugu.v1.1.1.linux.x86_64 /usr/local/bin/fugu
chmod +x /usr/local/bin/fugu

How is this different from docker-compose/ fig?

While docker-compose (originated from fig) focuses on the definition and orchestration of complex application environments, fugu focuses on one single docker container/ docker image.

Changelog

Find the changelog and breaking changes here: https://github.com/mattes/fugu/releases


Build Status

Fugu is built on top of go-collect.

Credits

Thanks to Thiago Lifter for his nice fugu fish logo.

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrTooManyArgs   = errors.New("too many arguments given")
	ErrMissingImage  = errors.New("image option is missing")
	ErrMissingName   = errors.New("name option is missing")
	ErrUnknownLabel  = errors.New("unknown label")
	ErrTagGitBranch  = errors.New("tag-git-branch failed")
	ErrMissingFlag   = errors.New("missing required flag")
	ErrNoCredentials = errors.New("missing required credentials")
)
View Source
var Commands = make(map[string]func(c *collect.Collector, p *data.Data, args []string) (err error))

Commands have more freedom and usually print to stdout/stderr directly

View Source
var DockerCommands = make(map[string]func(c *collect.Collector, p *data.Data, args []string) (str string, err error))

DockerCommands return string that is always run

View Source
var DockerFlags = make(map[string]*flags.Flags)
View Source
var FuguFlags = make(map[string]*flags.Flags)

Functions

func DockerExec

func DockerExec(cmd string, printCmd bool)

DockerExec runs a docker command

Types

type RegistryDockerImage

type RegistryDockerImage struct {
	Name string
	Tags []string
}

func ListImages

func ListImages(registry, user, password string) ([]RegistryDockerImage, error)

type RegistryDockerImages

type RegistryDockerImages []RegistryDockerImage

func (RegistryDockerImages) Len

func (a RegistryDockerImages) Len() int

func (RegistryDockerImages) Less

func (a RegistryDockerImages) Less(i, j int) bool

func (RegistryDockerImages) Swap

func (a RegistryDockerImages) Swap(i, j int)

Directories

Path Synopsis
Godeps
_workspace/src/github.com/docker/docker/api/stats
This package is used for API stability in the types and response to the consumers of the API stats endpoint.
This package is used for API stability in the types and response to the consumers of the API stats endpoint.
_workspace/src/github.com/docker/docker/pkg/mflag
Package flag implements command-line flag parsing.
Package flag implements command-line flag parsing.
_workspace/src/github.com/docker/docker/pkg/pools
Package pools provides a collection of pools which provide various data types with buffers.
Package pools provides a collection of pools which provide various data types with buffers.
_workspace/src/github.com/docker/docker/registry/v2
Package v2 describes routes, urls and the error codes used in the Docker Registry JSON HTTP API V2.
Package v2 describes routes, urls and the error codes used in the Docker Registry JSON HTTP API V2.
_workspace/src/github.com/docker/libtrust
Package libtrust provides an interface for managing authentication and authorization using public key cryptography.
Package libtrust provides an interface for managing authentication and authorization using public key cryptography.
_workspace/src/github.com/fhs/go-netrc/netrc
Package netrc implements a parser for netrc file format.
Package netrc implements a parser for netrc file format.
_workspace/src/github.com/gorilla/context
Package context stores values shared during a request lifetime.
Package context stores values shared during a request lifetime.
_workspace/src/github.com/gorilla/mux
Package gorilla/mux implements a request router and dispatcher.
Package gorilla/mux implements a request router and dispatcher.
_workspace/src/github.com/jingweno/go-sawyer/hypermedia
Package hypermedia provides helpers for parsing hypermedia links in resources and expanding the links to make further requests.
Package hypermedia provides helpers for parsing hypermedia links in resources and expanding the links to make further requests.
_workspace/src/github.com/jingweno/go-sawyer/mediatype
Package mediatype contains helpers for parsing media type strings.
Package mediatype contains helpers for parsing media type strings.
_workspace/src/github.com/jtacoma/uritemplates
Package uritemplates is a level 4 implementation of RFC 6570 (URI Template, http://tools.ietf.org/html/rfc6570).
Package uritemplates is a level 4 implementation of RFC 6570 (URI Template, http://tools.ietf.org/html/rfc6570).
_workspace/src/github.com/kballard/go-shellquote
Shellquote provides utilities for joining/splitting strings using sh's word-splitting rules.
Shellquote provides utilities for joining/splitting strings using sh's word-splitting rules.
_workspace/src/github.com/mattn/go-isatty
Package isatty implements interface to isatty
Package isatty implements interface to isatty
_workspace/src/github.com/octokit/go-octokit/octokit
Package octokit is a simple and official wrapper for the GitHub API in Go.
Package octokit is a simple and official wrapper for the GitHub API in Go.
_workspace/src/github.com/stretchr/testify/assert
A set of comprehensive testing tools for use with the normal Go testing system.
A set of comprehensive testing tools for use with the normal Go testing system.
_workspace/src/golang.org/x/crypto/ssh/terminal
Package terminal provides support functions for dealing with terminals, as commonly found on UNIX systems.
Package terminal provides support functions for dealing with terminals, as commonly found on UNIX systems.
_workspace/src/gopkg.in/yaml.v1
Package yaml implements YAML support for the Go language.
Package yaml implements YAML support for the Go language.
_workspace/src/gopkg.in/yaml.v2
Package yaml implements YAML support for the Go language.
Package yaml implements YAML support for the Go language.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL