Define and run multi-container applications with Docker
Go to file
Guillaume Tardif 98f7a8e1aa When can not load config file, the previous cli is displaying a WARNING message, but continues with default context, we should do the same.
This happened in some desktop e2e tests where the config file is not set properly in WSL2 environment, see 
https://github.com/docker/pinata/pull/14062
2020-06-15 11:41:26 +02:00
.dependabot Run dependabot daily instead of weekly 2020-06-09 09:45:57 +02:00
.github Removed test requiring linux containers 2020-06-11 12:58:58 +02:00
azure Fix volume path setting for linux containers from windows host 2020-06-11 10:44:30 +02:00
backend Remove unused backend proto 2020-06-02 09:41:57 +02:00
cli When can not load config file, the previous cli is displaying a WARNING message, but continues with default context, we should do the same. 2020-06-15 11:41:26 +02:00
client Store context type in metadata to make retrocompatibility with previous contexts easier (potentially switching back and forth) 2020-06-10 18:17:48 +02:00
compose Put all protos inside the `protos` package 2020-05-25 15:04:28 +02:00
config Wrap error cause so that we can understand why the cli cannot determine current context. 2020-06-14 19:38:29 +02:00
containers Put all protos inside the `protos` package 2020-05-25 15:04:28 +02:00
context Ensure the `docker context inspect default` is not executed in a different context, that might make it fail. 2020-06-13 10:50:56 +02:00
docs/cli
errdefs Change the way a context is stored 2020-05-22 16:32:43 +02:00
example Fix Azure login : allow getting a backend when no corresponding context already exists with an explicit call from the login command. Will be usefull next for context creation with azure interactive things 2020-05-29 11:35:35 +02:00
moby Merge pull request #179 from rumpl/feat-stream 2020-06-08 06:52:56 -07:00
multierror
protos Add context endpoint to set the current context 2020-06-08 16:01:43 +02:00
server Store context type in metadata to make retrocompatibility with previous contexts easier (potentially switching back and forth) 2020-06-10 18:17:48 +02:00
tests Fix typo in DOCKER ENPOINT 2020-06-12 14:50:35 +02:00
.dockerignore Add .git to .dockerignore 2020-05-29 11:29:28 +02:00
.gitattributes Removed test requiring linux containers 2020-06-11 12:58:58 +02:00
.gitignore
.golangci.yml Extract interface / types to allow unit tests / mock 2020-05-15 10:15:56 +02:00
Dockerfile Unify protos with client interfaces 2020-06-08 09:43:19 +02:00
Makefile Merge pull request #208 from metcalfc/wsl2 2020-06-13 02:41:48 -07: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 Tidy Makefiles 2020-06-02 11:58:29 +02:00
go.mod Bump github.com/onsi/gomega from 1.9.0 to 1.10.1 2020-06-10 09:07:30 +00:00
go.sum Bump github.com/onsi/gomega from 1.9.0 to 1.10.1 2020-06-10 09:07:30 +00: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.