Define and run multi-container applications with Docker
Перейти к файлу
Djordje Lukic 39042aa8bd Build example and local backend conditionaly
* `make` will build the cli with all backends exnabled
* `make cross` will cross build without the example and local backend

You can still cross compile with all backends by doing

```console
$ BUILD_TAGS=example,local make cross
```

Signed-off-by: Djordje Lukic <djordje.lukic@docker.com>
2020-06-15 18:02:30 +02:00
.dependabot Run dependabot daily instead of weekly 2020-06-09 09:45:57 +02:00
.github Build example and local backend conditionaly 2020-06-15 18:02:30 +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 Renamed Moby backend to “local” backend. This will leave “moby” available for default type contexts 2020-06-15 12:20:03 +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 Renamed Moby backend to “local” backend. This will leave “moby” available for default type contexts 2020-06-15 12:20:03 +02:00
containers Put all protos inside the `protos` package 2020-05-25 15:04:28 +02:00
context default context type is “moby” 2020-06-15 12:25:35 +02:00
docs/cli Renamed Moby backend to “local” backend. This will leave “moby” available for default type contexts 2020-06-15 12:20:03 +02:00
errdefs Change the way a context is stored 2020-05-22 16:32:43 +02:00
example Build example and local backend conditionaly 2020-06-15 18:02:30 +02:00
local Build example and local backend conditionaly 2020-06-15 18:02:30 +02:00
multierror Add multierror 2020-05-13 18:37:41 +02:00
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 default context type is “moby” 2020-06-15 12:25: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 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 Build example and local backend conditionaly 2020-06-15 18:02:30 +02:00
Makefile Build example and local backend conditionaly 2020-06-15 18:02:30 +02:00
README.md Build example and local backend conditionaly 2020-06-15 18:02:30 +02:00
builder.Makefile Build example and local backend conditionaly 2020-06-15 18:02:30 +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

This will make the cli with all backends enabled. make cross on the other hand will cross-compile the cli without the example and local backend. We use make cross to build for our release, hence the exclusion of those backends. You can still cross-compile with all backends enabled: BUILD_TAGS=example,local make cross.

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.