imagelayers

command module
v0.0.0-...-0eca5ab Latest Latest
Warning

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

Go to latest
Published: Sep 4, 2017 License: Apache-2.0 Imports: 10 Imported by: 0

README

ImageLayers API

ImageLayers.io is a project maintained by Microscaling Systems since September 2016. The project was created and developed by the team at CenturyLink Labs. This utility provides a browser-based visualization of user-specified Docker Images and their layers. This visualization provides key information on the composition of a Docker Image and any commonalities between them. ImageLayers.io allows Docker users to easily discover best practices for image construction, and aid in determining which images are most appropriate for their specific use cases. Similar to docker images --tree, the ImageLayers project aims to make visualizing your image cache easier, so that you may identify images that take up excessive space and create smarter base images for your Docker projects.

Installation

The ImageLayers API is a golang application and uses godep.

$ go get github.com/microscaling/imagelayers
$ go get github.com/tools/godep
$ cd $GOPATH/src/github.com/microscaling/imagelayers
$ godep restore
$ go test ./... #should all pass
$ go run main.go #or build and run

Build Docker image

# Compile the Go binary for Linux with static linking for Alpine
$ GOOS=linux CGO_ENABLED=0 go build -a -installsuffix cgo -o imagelayers

# Build the Docker image using args for the labels
$ docker build --tag microscaling/imagelayers-api:$(cat VERSION) \
               --build-arg BUILD_DATE=`date -u +"%Y-%m-%dT%H:%M:%SZ"` \
               --build-arg VCS_REF=`git rev-parse --short HEAD` \
               --build-arg VERSION=`cat VERSION` .

imagelayers-graph UI Project

ImageLayers provides services to search and analyze mulitple images within the docker registry. Imagelayers Graph is an example interface using these services.

ImageLayers In Action

You can see the hosted version of ImageLayers at imagelayers.io.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
Godeps
_workspace/src/github.com/CenturyLinkLabs/docker-reg-client/registry
Package registry is an API wrapper for the Docker Registry v1 API and supports all of the documented operations, including: getting/putting images, retrieving repository tags, and executing searches.
Package registry is an API wrapper for the Docker Registry v1 API and supports all of the documented operations, including: getting/putting images, retrieving repository tags, and executing searches.
_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/rs/cors
Package cors is net/http handler to handle CORS related requests as defined by http://www.w3.org/TR/cors/ You can configure it by passing an option struct to cors.New: c := cors.New(cors.Options{ AllowedOrigins: []string{"foo.com"}, AllowedMethods: []string{"GET", "POST", "DELETE"}, AllowCredentials: true, }) Then insert the handler in the chain: handler = c.Handler(handler) See Options documentation for more options.
Package cors is net/http handler to handle CORS related requests as defined by http://www.w3.org/TR/cors/ You can configure it by passing an option struct to cors.New: c := cors.New(cors.Options{ AllowedOrigins: []string{"foo.com"}, AllowedMethods: []string{"GET", "POST", "DELETE"}, AllowCredentials: true, }) Then insert the handler in the chain: handler = c.Handler(handler) See Options documentation for more options.
_workspace/src/github.com/stretchr/objx
objx - Go package for dealing with maps, slices, JSON and other data.
objx - Go package for dealing with maps, slices, JSON and other data.
_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/github.com/stretchr/testify/mock
Provides a system by which it is possible to mock your objects and verify calls are happening as expected.
Provides a system by which it is possible to mock your objects and verify calls are happening as expected.
_workspace/src/golang.org/x/net/netutil
Package netutil provides network utility functions, complementing the more common ones in the net package.
Package netutil provides network utility functions, complementing the more common ones in the net package.

Jump to

Keyboard shortcuts

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