Permalink
| name: docker | |
| version: 17.03.2-ce-1 | |
| summary: Docker Linux container runtime | |
| description: Docker complements kernel namespacing with a high-level API which operates at the process level. It runs unix processes with strong guarantees of isolation and repeatability across servers. | |
| confinement: strict | |
| grade: stable | |
| plugs: | |
| support: | |
| interface: docker-support | |
| privileged: | |
| interface: docker-support | |
| privileged-containers: true | |
| docker-cli: | |
| interface: docker | |
| slots: | |
| docker-daemon: | |
| interface: docker | |
| docker-executables: | |
| content: docker-executables | |
| interface: content | |
| read: | |
| - . | |
| apps: | |
| docker: | |
| command: docker-wrapper docker | |
| plugs: | |
| - docker-cli | |
| - network | |
| - home | |
| dockerd: | |
| command: dockerd-wrapper | |
| daemon: simple | |
| plugs: | |
| - network-bind | |
| - firewall-control | |
| - support | |
| - privileged | |
| - home | |
| slots: | |
| - docker-daemon | |
| # TODO determine if we can "provide" a "docker-compose" in PATH directly (since this'll show up as "docker.compose" in the user PATH) | |
| compose: | |
| command: docker-wrapper docker-compose | |
| plugs: | |
| - docker-cli | |
| - network | |
| - home | |
| machine: | |
| command: docker-wrapper docker-machine | |
| plugs: | |
| - docker-cli | |
| - network | |
| - home | |
| - network-bind | |
| help: | |
| command: help | |
| parts: | |
| snappy-bins: | |
| plugin: shell | |
| shell: bash | |
| shell-flags: ['-ex'] | |
| shell-command: | | |
| install -d "$SNAPCRAFT_PART_INSTALL/bin" | |
| install -t "$SNAPCRAFT_PART_INSTALL/bin" "$SNAPDIR"/bin/* | |
| stage-packages: | |
| - mount | |
| go: | |
| plugin: gobuild | |
| source: https://storage.googleapis.com/golang/go1.8.3.src.tar.gz | |
| source-type: tar | |
| snap: | |
| - -* | |
| build-packages: | |
| - golang-go | |
| - rsync | |
| - build-essential | |
| - netbase | |
| - python3-pyelftools | |
| docker: | |
| plugin: shell | |
| source: https://github.com/docker/docker/archive/v17.03.2-ce.tar.gz | |
| source-type: tar | |
| shell: bash | |
| shell-flags: ['-eux', '-o', 'pipefail'] | |
| shell-command: | | |
| export GOROOT="$SNAPDIR/parts/go/install" | |
| export PATH="$GOROOT/bin:$PATH" | |
| go version | |
| source "$SNAPDIR/prep-docker-build.sh" | |
| ./hack/make.sh dynbinary | |
| ls -l bundles/latest/*/ | |
| clientBin='bundles/latest/dynbinary-client/docker' | |
| daemonBin='bundles/latest/dynbinary-daemon/dockerd' | |
| "$clientBin" -v | |
| "$daemonBin" -v | |
| "$clientBin" -v | grep -q -- "$DOCKER_GITCOMMIT" | |
| "$daemonBin" -v | grep -q -- "$DOCKER_GITCOMMIT" | |
| install -d "$SNAPCRAFT_PART_INSTALL/bin" | |
| install -T "$(readlink -f "$clientBin")" "$SNAPCRAFT_PART_INSTALL/bin/docker" | |
| install -T "$(readlink -f "$daemonBin")" "$SNAPCRAFT_PART_INSTALL/bin/dockerd" | |
| after: | |
| - go | |
| build-packages: | |
| - btrfs-tools | |
| - gcc | |
| - libc6-dev | |
| - libdevmapper-dev | |
| - libltdl-dev | |
| - patch | |
| - git | |
| - pkg-config | |
| stage-packages: | |
| - aufs-tools | |
| containerd: | |
| plugin: shell | |
| # from https://github.com/moby/moby/blob/v17.03.2-ce/hack/dockerfile/binaries-commits#L7 | |
| source: https://github.com/docker/containerd/archive/4ab9917febca54791c5f071a9d1f404867857fcc.tar.gz | |
| source-type: tar | |
| shell: bash | |
| shell-flags: ['-ex'] | |
| shell-command: | | |
| export GOROOT="$SNAPDIR/parts/go/install" | |
| export PATH="$GOROOT/bin:$PATH" | |
| go version | |
| mkdir -p .gopath/src/github.com/docker | |
| ln -sfT "$PWD" .gopath/src/github.com/docker/containerd | |
| export GOPATH="$PWD/.gopath" | |
| make GIT_COMMIT= GIT_BRANCH= LDFLAGS= | |
| install -d "$SNAPCRAFT_PART_INSTALL/bin" | |
| install -T bin/containerd "$SNAPCRAFT_PART_INSTALL/bin/docker-containerd" | |
| install -T bin/containerd-shim "$SNAPCRAFT_PART_INSTALL/bin/docker-containerd-shim" | |
| install -T bin/ctr "$SNAPCRAFT_PART_INSTALL/bin/docker-containerd-ctr" | |
| after: | |
| - go | |
| build-packages: | |
| - make | |
| runc: | |
| plugin: shell | |
| # from https://github.com/moby/moby/blob/v17.03.2-ce/hack/dockerfile/binaries-commits#L6 | |
| source: https://github.com/opencontainers/runc/archive/54296cf40ad8143b62dbcaa1d90e520a2136ddfe.tar.gz | |
| source-type: tar | |
| shell: bash | |
| shell-flags: ['-ex'] | |
| shell-command: | | |
| export GOROOT="$SNAPDIR/parts/go/install" | |
| export PATH="$GOROOT/bin:$PATH" | |
| go version | |
| mkdir -p .gopath/src/github.com/opencontainers | |
| ln -sfT "$PWD" .gopath/src/github.com/opencontainers/runc | |
| export GOPATH="$PWD/.gopath" | |
| make BUILDTAGS='seccomp apparmor selinux' COMMIT= | |
| install -d "$SNAPCRAFT_PART_INSTALL/bin" | |
| install -T runc "$SNAPCRAFT_PART_INSTALL/bin/docker-runc" | |
| after: | |
| - go | |
| build-packages: | |
| - libapparmor-dev | |
| - libseccomp-dev | |
| - make | |
| libnetwork: | |
| plugin: shell | |
| # from https://github.com/docker/docker/blob/v17.03.2-ce/hack/dockerfile/binaries-commits#L9 | |
| source: https://github.com/docker/libnetwork/archive/0f534354b813003a754606689722fe253101bc4e.tar.gz | |
| source-type: tar | |
| shell: bash | |
| shell-flags: ['-ex'] | |
| shell-command: | | |
| export GOROOT="$SNAPDIR/parts/go/install" | |
| export PATH="$GOROOT/bin:$PATH" | |
| go version | |
| mkdir -p .gopath/src/github.com/docker | |
| ln -sfT "$PWD" .gopath/src/github.com/docker/libnetwork | |
| export GOPATH="$PWD/.gopath" | |
| go get github.com/tools/godep | |
| export PATH="$GOPATH/bin/:$PATH" | |
| godep version | |
| make build-local | |
| install -d "$SNAPCRAFT_PART_INSTALL/bin" | |
| install -T bin/docker-proxy "$SNAPCRAFT_PART_INSTALL/bin/docker-proxy" | |
| install -T bin/dnet "$SNAPCRAFT_PART_INSTALL/bin/dnet" | |
| after: | |
| - go | |
| build-packages: | |
| - iptables | |
| - make | |
| tini: | |
| plugin: cmake | |
| source: https://github.com/krallin/tini.git | |
| source-type: git | |
| # from https://github.com/moby/moby/blob/v17.03.2-ce/hack/dockerfile/binaries-commits#L8 | |
| source-commit: 949e6facb77383876aeff8a6944dde66b3089574 | |
| organize: | |
| 'bin/tini-static': bin/docker-init | |
| prime: | |
| - -bin/tini | |
| compose: | |
| plugin: python | |
| python-version: python2 | |
| source: https://github.com/docker/compose/archive/1.14.0.tar.gz | |
| source-type: tar | |
| machine: | |
| plugin: shell | |
| source: https://github.com/docker/machine/archive/v0.12.0.tar.gz | |
| source-type: tar | |
| shell: bash | |
| shell-flags: ['-eux', '-o', 'pipefail'] | |
| shell-command: | | |
| export GOROOT="$SNAPDIR/parts/go/install" | |
| export PATH="$GOROOT/bin:$PATH" | |
| go version | |
| mkdir -p .gopath/src/github.com/docker | |
| ln -sfT "$PWD" .gopath/src/github.com/docker/machine | |
| export GOPATH="$PWD/.gopath" | |
| pushd .gopath/src/github.com/docker/machine | |
| make build | |
| popd | |
| install -d "$SNAPCRAFT_PART_INSTALL/bin" | |
| install -T bin/docker-machine "$SNAPCRAFT_PART_INSTALL/bin/docker-machine" | |
| after: | |
| - go | |
| # vim:set et ts=2 sw=2: |