Define and run multi-container applications with Docker
Go to file
Chris Crone 39cd5036a6
Merge pull request #144 from chris-crone/lint-speed
Use docker build for lint
2020-05-22 13:25:46 +02:00
.github Add default context to the context ls output 2020-05-20 18:39:10 +02:00
azure Seed random with nanosecond time 2020-05-22 10:46:54 +02:00
backend Use alpine as base image 2020-05-20 18:39:10 +02:00
cli Merge pull request #142 from chris-crone/fix-141 2020-05-22 11:31:16 +02:00
client Remove gRPC stuff from the client 2020-05-20 16:49:20 +02:00
compose Use alpine as base image 2020-05-20 18:39:10 +02:00
containers Use alpine as base image 2020-05-20 18:39:10 +02:00
context Add a CliSuite for cli unit tests 2020-05-22 10:13:56 +02:00
docs/cli Move CLI UX docs into folder 2020-05-14 13:29:11 +02:00
errdefs Fix linter problems 2020-05-20 10:16:36 +02:00
example Add tests for ps --all 2020-05-18 15:31:59 +02:00
moby Add timeout as a parameter to the stop action 2020-05-18 15:31:59 +02:00
multierror Add multierror 2020-05-13 18:37:41 +02:00
server Use config dir for serving API 2020-05-20 15:56:07 +02:00
tests Merge pull request #125 from rumpl/feat-default-context 2020-05-22 01:14:42 -07:00
.dockerignore Update dockerignore 2020-05-20 15:56:32 +02:00
.gitignore Remove non-project path 2020-04-24 14:04:27 +02:00
.golangci.yml Extract interface / types to allow unit tests / mock 2020-05-15 10:15:56 +02:00
Dockerfile Use docker build for lint 2020-05-22 13:14:44 +02:00
Makefile Use docker build for lint 2020-05-22 13:14:44 +02:00
README.md delegate Moby to docker-classic binary, link docker-classic in e2e tests 2020-05-20 14:23:29 +02:00
builder.Makefile Use alpine as base image 2020-05-20 18:39:10 +02:00
go.mod Add default context to the context ls output 2020-05-20 18:39:10 +02:00
go.sum Add default context to the context ls output 2020-05-20 18:39:10 +02:00

README.md

Docker API

Actions Status

Dev Setup

The recommended way is to use the main Makefile that runs everything inside a container.

If you don't have or want to use Docker for building you need to make sure you have all the needed tools installed locally:

  • go 1.14
  • protoc
  • go get github.com/golang/protobuf/protoc-gen-go@v1.4.1
  • go get golang.org/x/tools/cmd/goimports
  • go get github.com/golangci/golangci-lint/cmd/golangci-lint@v1.26.0

And then you can call the same make targets but you need to pass it the builder.Makefile (make -f builder.Makefile).

The new CLI delegates to the classic docker for default contexts ; delegation is done to docker-classic.

  • make classic-link will create a docker-classic link in /usr/local/bin if you don't already have it from Docker Desktop

Building the project

$ make

If you make changes to the .proto files, make sure to make protos to generate go code.

Tests

To run unit tests:

make test

If you need to update a golden file simply do go test ./... -test.update-golden.