mirror of
https://github.com/flatcar/scripts.git
synced 2025-09-01 03:41:11 +02:00
commit
c464f538a5
@ -1 +0,0 @@
|
|||||||
DIST docker-0.5.3.tar.gz 1910016 SHA256 c6be25b6c91c985285b770c3c6ea35df0410fb13219191e7899365b256d9bb06 SHA512 2fba79d39cb12aa81372c7cf1c2cd881a555913c4fb0f63124255cfabc1fd8cda3b5e92183e1a76b5287a83b989958d8793f5254b626172d9c99325a7de35d43 WHIRLPOOL 4e5475fc5dfdd26c932a32fa9ae09191ddcc334d7149d202c284832368dd66148df8dad9e1da1b72f2481590ed46f5cb9f629e602815f50129b9831e1ab2d48d
|
|
@ -1,164 +0,0 @@
|
|||||||
# Copyright 1999-2013 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Header: $
|
|
||||||
|
|
||||||
EAPI=5
|
|
||||||
|
|
||||||
DESCRIPTION="Docker complements LXC with a high-level API which operates at the process level."
|
|
||||||
HOMEPAGE="http://www.docker.io/"
|
|
||||||
SRC_URI=""
|
|
||||||
|
|
||||||
EGIT_REPO_URI="git://github.com/dotcloud/docker.git"
|
|
||||||
if [[ ${PV} == *9999 ]]; then
|
|
||||||
KEYWORDS=""
|
|
||||||
else
|
|
||||||
EGIT_COMMIT="v${PV}"
|
|
||||||
KEYWORDS="~amd64"
|
|
||||||
fi
|
|
||||||
|
|
||||||
inherit bash-completion-r1 git-2 linux-info systemd user
|
|
||||||
|
|
||||||
LICENSE="Apache-2.0"
|
|
||||||
SLOT="0"
|
|
||||||
IUSE="doc vim-syntax"
|
|
||||||
|
|
||||||
DEPEND="
|
|
||||||
>=dev-lang/go-1.1.2
|
|
||||||
dev-vcs/git
|
|
||||||
dev-vcs/mercurial
|
|
||||||
doc? (
|
|
||||||
dev-python/sphinx
|
|
||||||
dev-python/sphinxcontrib-httpdomain
|
|
||||||
)
|
|
||||||
"
|
|
||||||
RDEPEND="
|
|
||||||
!app-emulation/lxc-docker-bin
|
|
||||||
>=app-arch/xz-utils-4.9
|
|
||||||
>=app-arch/tar-1.26
|
|
||||||
>=sys-apps/iproute2-3.5
|
|
||||||
>=net-firewall/iptables-1.4
|
|
||||||
>=app-emulation/lxc-0.8
|
|
||||||
>=dev-vcs/git-1.7
|
|
||||||
|| (
|
|
||||||
sys-fs/aufs3
|
|
||||||
sys-kernel/aufs-sources
|
|
||||||
)
|
|
||||||
"
|
|
||||||
|
|
||||||
RESTRICT="strip"
|
|
||||||
|
|
||||||
DOCKERFILE_VIM_S="${WORKDIR}/dockerfile.vim"
|
|
||||||
|
|
||||||
# TODO AUFS will be replaced with device-mapper (sys-fs/lvm2[static-libs]) in 0.7
|
|
||||||
ERROR_AUFS_FS="AUFS_FS is required to be set if and only if aufs-sources are used"
|
|
||||||
|
|
||||||
ERROR_MEMCG_SWAP="MEMCG_SWAP is required if you wish to limit swap usage of containers"
|
|
||||||
|
|
||||||
pkg_setup() {
|
|
||||||
CONFIG_CHECK+=" ~AUFS_FS ~BRIDGE ~MEMCG_SWAP ~NETFILTER_XT_MATCH_ADDRTYPE ~NF_NAT ~NF_NAT_NEEDED"
|
|
||||||
check_extra_config
|
|
||||||
}
|
|
||||||
|
|
||||||
src_unpack() {
|
|
||||||
git-2_src_unpack
|
|
||||||
|
|
||||||
if use vim-syntax; then
|
|
||||||
( # subshell to prevent environment leakage (and confusion of smart-live-rebuild)
|
|
||||||
EGIT_SOURCEDIR="${DOCKERFILE_VIM_S}"
|
|
||||||
EGIT_PROJECT="honza-dockerfile.vim.git"
|
|
||||||
EGIT_REPO_URI="https://github.com/honza/dockerfile.vim.git"
|
|
||||||
EGIT_MASTER="master"
|
|
||||||
EGIT_BRANCH="${EGIT_MASTER}"
|
|
||||||
EGIT_COMMIT="${EGIT_BRANCH}"
|
|
||||||
EGIT_NOUNPACK="true"
|
|
||||||
git-2_src_unpack
|
|
||||||
)
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
export CGO_ENABLED=0 # we need static linking!
|
|
||||||
|
|
||||||
export GOPATH="${WORKDIR}/gopath"
|
|
||||||
mkdir -p "$GOPATH" || die
|
|
||||||
|
|
||||||
# copy GOROOT so we can build it without cgo and not modify anything in the REAL_GOROOT
|
|
||||||
REAL_GOROOT="$(go env GOROOT)"
|
|
||||||
export GOROOT="${WORKDIR}/goroot"
|
|
||||||
rm -rf "$GOROOT" || die
|
|
||||||
cp -R "$REAL_GOROOT" "$GOROOT" || die
|
|
||||||
|
|
||||||
# recompile GOROOT to be cgo-less and thus static-able (especially net package)
|
|
||||||
go install -a -v std || die
|
|
||||||
|
|
||||||
# make sure docker itself is in our shiny new GOPATH
|
|
||||||
mkdir -p "${GOPATH}/src/github.com/dotcloud" || die
|
|
||||||
ln -sf "$(pwd -P)" "${GOPATH}/src/github.com/dotcloud/docker" || die
|
|
||||||
|
|
||||||
# we need our vendored deps, too
|
|
||||||
export GOPATH="$GOPATH:$(pwd -P)/vendor"
|
|
||||||
|
|
||||||
# time to build!
|
|
||||||
./hack/make.sh binary || die
|
|
||||||
|
|
||||||
# now copy the binary to a consistent location that doesn't involve the current version number
|
|
||||||
mkdir -p bin || die
|
|
||||||
VERSION=$(cat ./VERSION)
|
|
||||||
cp -v bundles/$VERSION/binary/docker-$VERSION bin/docker || die
|
|
||||||
|
|
||||||
if use doc; then
|
|
||||||
emake -C docs docs man || die
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
dobin bin/docker
|
|
||||||
dodoc AUTHORS CONTRIBUTING.md CHANGELOG.md MAINTAINERS NOTICE README.md
|
|
||||||
|
|
||||||
newinitd "${FILESDIR}/docker-r2.initd" docker
|
|
||||||
newconfd "${FILESDIR}/docker-r2.confd" docker
|
|
||||||
|
|
||||||
systemd_dounit "${FILESDIR}/docker.service"
|
|
||||||
|
|
||||||
insinto /usr/share/${P}/contrib
|
|
||||||
doins contrib/README
|
|
||||||
cp -R "${S}/contrib"/* "${D}/usr/share/${P}/contrib/"
|
|
||||||
|
|
||||||
newbashcomp contrib/docker.bash docker
|
|
||||||
|
|
||||||
if use doc; then
|
|
||||||
dohtml -r docs/_build/html/*
|
|
||||||
doman docs/_build/man/*
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use vim-syntax; then
|
|
||||||
insinto /usr/share/vim/vimfiles
|
|
||||||
doins -r "${DOCKERFILE_VIM_S}/ftdetect"
|
|
||||||
doins -r "${DOCKERFILE_VIM_S}/syntax"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
elog ""
|
|
||||||
elog "To use docker, the docker daemon must be running as root. To automatically"
|
|
||||||
elog "start the docker daemon at boot, add docker to the default runlevel:"
|
|
||||||
elog " rc-update add docker default"
|
|
||||||
elog "Similarly for systemd:"
|
|
||||||
elog " systemctl enable docker.service"
|
|
||||||
elog ""
|
|
||||||
|
|
||||||
# create docker group if the code checking for it in /etc/group exists
|
|
||||||
enewgroup docker
|
|
||||||
|
|
||||||
elog "To use docker as a non-root user, add yourself to the docker group."
|
|
||||||
elog ""
|
|
||||||
|
|
||||||
ewarn ""
|
|
||||||
ewarn "If you want your containers to have access to the public internet or even"
|
|
||||||
ewarn "the existing private network, IP Forwarding must be enabled:"
|
|
||||||
ewarn " sysctl -w net.ipv4.ip_forward=1"
|
|
||||||
ewarn "or more permanently:"
|
|
||||||
ewarn " echo net.ipv4.ip_forward = 1 > /etc/sysctl.d/${PN}.conf"
|
|
||||||
ewarn "Please be mindful of the security implications of enabling IP Forwarding."
|
|
||||||
ewarn ""
|
|
||||||
}
|
|
@ -1,152 +0,0 @@
|
|||||||
# Copyright 1999-2013 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Header: $
|
|
||||||
|
|
||||||
EAPI=5
|
|
||||||
|
|
||||||
DESCRIPTION="Docker complements LXC with a high-level API which operates at the process level."
|
|
||||||
HOMEPAGE="http://www.docker.io/"
|
|
||||||
SRC_URI=""
|
|
||||||
|
|
||||||
EGIT_REPO_URI="git://github.com/dotcloud/docker.git"
|
|
||||||
if [[ ${PV} == *9999 ]]; then
|
|
||||||
KEYWORDS=""
|
|
||||||
else
|
|
||||||
EGIT_COMMIT="v${PV}"
|
|
||||||
KEYWORDS="~amd64"
|
|
||||||
fi
|
|
||||||
|
|
||||||
inherit bash-completion-r1 git-2 linux-info systemd user
|
|
||||||
|
|
||||||
LICENSE="Apache-2.0"
|
|
||||||
SLOT="0"
|
|
||||||
IUSE="doc vim-syntax"
|
|
||||||
|
|
||||||
DEPEND="
|
|
||||||
>=dev-lang/go-1.1.2
|
|
||||||
dev-vcs/git
|
|
||||||
dev-vcs/mercurial
|
|
||||||
doc? (
|
|
||||||
dev-python/sphinx
|
|
||||||
dev-python/sphinxcontrib-httpdomain
|
|
||||||
)
|
|
||||||
"
|
|
||||||
RDEPEND="
|
|
||||||
!app-emulation/lxc-docker-bin
|
|
||||||
>=app-arch/tar-1.26
|
|
||||||
>=sys-apps/iproute2-3.5
|
|
||||||
>=net-firewall/iptables-1.4
|
|
||||||
>=app-emulation/lxc-0.8
|
|
||||||
>=dev-vcs/git-1.7
|
|
||||||
>=app-arch/xz-utils-4.9
|
|
||||||
|| (
|
|
||||||
sys-fs/aufs3
|
|
||||||
sys-kernel/aufs-sources
|
|
||||||
)
|
|
||||||
"
|
|
||||||
|
|
||||||
RESTRICT="strip"
|
|
||||||
|
|
||||||
# TODO AUFS will be replaced with device-mapper (sys-fs/lvm2[static-libs]) in 0.7
|
|
||||||
ERROR_AUFS_FS="AUFS_FS is required to be set if and only if aufs-sources are used"
|
|
||||||
|
|
||||||
ERROR_MEMCG_SWAP="MEMCG_SWAP is required if you wish to limit swap usage of containers"
|
|
||||||
|
|
||||||
pkg_setup() {
|
|
||||||
CONFIG_CHECK+=" ~AUFS_FS ~BRIDGE ~MEMCG_SWAP ~NETFILTER_XT_MATCH_ADDRTYPE ~NF_NAT ~NF_NAT_NEEDED"
|
|
||||||
check_extra_config
|
|
||||||
}
|
|
||||||
|
|
||||||
src_unpack() {
|
|
||||||
git-2_src_unpack
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
export CGO_ENABLED=0 # we need static linking!
|
|
||||||
|
|
||||||
export GOPATH="${WORKDIR}/gopath"
|
|
||||||
mkdir -p "$GOPATH" || die
|
|
||||||
|
|
||||||
# copy GOROOT so we can build it without cgo and not modify anything in the REAL_GOROOT
|
|
||||||
REAL_GOROOT="$(go env GOROOT)"
|
|
||||||
export GOROOT="${WORKDIR}/goroot"
|
|
||||||
rm -rf "$GOROOT" || die
|
|
||||||
cp -R "$REAL_GOROOT" "$GOROOT" || die
|
|
||||||
|
|
||||||
# recompile GOROOT to be cgo-less and thus static-able (especially net package)
|
|
||||||
go install -a -v std || die
|
|
||||||
|
|
||||||
# make sure docker itself is in our shiny new GOPATH
|
|
||||||
mkdir -p "${GOPATH}/src/github.com/dotcloud" || die
|
|
||||||
ln -sf "$(pwd -P)" "${GOPATH}/src/github.com/dotcloud/docker" || die
|
|
||||||
|
|
||||||
# we need our vendored deps, too
|
|
||||||
export GOPATH="$GOPATH:$(pwd -P)/vendor"
|
|
||||||
|
|
||||||
# time to build!
|
|
||||||
./hack/make.sh binary || die
|
|
||||||
|
|
||||||
# now copy the binary to a consistent location that doesn't involve the current version number
|
|
||||||
mkdir -p bin || die
|
|
||||||
VERSION=$(cat ./VERSION)
|
|
||||||
cp -v bundles/$VERSION/binary/docker-$VERSION bin/docker || die
|
|
||||||
|
|
||||||
if use doc; then
|
|
||||||
emake -C docs docs man || die
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
dobin bin/docker
|
|
||||||
dodoc AUTHORS CONTRIBUTING.md CHANGELOG.md MAINTAINERS NOTICE README.md
|
|
||||||
|
|
||||||
newinitd "${FILESDIR}/docker-r3.initd" docker
|
|
||||||
newconfd "${FILESDIR}/docker-r3.confd" docker
|
|
||||||
|
|
||||||
systemd_dounit "${FILESDIR}/docker.service"
|
|
||||||
|
|
||||||
insinto /usr/share/${P}/contrib
|
|
||||||
doins contrib/README
|
|
||||||
cp -R "${S}/contrib"/* "${D}/usr/share/${P}/contrib/"
|
|
||||||
|
|
||||||
if use doc; then
|
|
||||||
dohtml -r docs/_build/html/*
|
|
||||||
doman docs/_build/man/*
|
|
||||||
fi
|
|
||||||
|
|
||||||
dobashcomp contrib/completion/bash/*
|
|
||||||
|
|
||||||
insinto /usr/share/zsh/site-functions
|
|
||||||
doins contrib/completion/zsh/*
|
|
||||||
|
|
||||||
if use vim-syntax; then
|
|
||||||
insinto /usr/share/vim/vimfiles
|
|
||||||
doins -r contrib/vim-syntax/ftdetect
|
|
||||||
doins -r contrib/vim-syntax/syntax
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
elog ""
|
|
||||||
elog "To use docker, the docker daemon must be running as root. To automatically"
|
|
||||||
elog "start the docker daemon at boot, add docker to the default runlevel:"
|
|
||||||
elog " rc-update add docker default"
|
|
||||||
elog "Similarly for systemd:"
|
|
||||||
elog " systemctl enable docker.service"
|
|
||||||
elog ""
|
|
||||||
|
|
||||||
# create docker group if the code checking for it in /etc/group exists
|
|
||||||
enewgroup docker
|
|
||||||
|
|
||||||
elog "To use docker as a non-root user, add yourself to the docker group."
|
|
||||||
elog ""
|
|
||||||
|
|
||||||
ewarn ""
|
|
||||||
ewarn "If you want your containers to have access to the public internet or even"
|
|
||||||
ewarn "the existing private network, IP Forwarding must be enabled:"
|
|
||||||
ewarn " sysctl -w net.ipv4.ip_forward=1"
|
|
||||||
ewarn "or more permanently:"
|
|
||||||
ewarn " echo net.ipv4.ip_forward = 1 > /etc/sysctl.d/${PN}.conf"
|
|
||||||
ewarn "Please be mindful of the security implications of enabling IP Forwarding."
|
|
||||||
ewarn ""
|
|
||||||
}
|
|
@ -1,151 +0,0 @@
|
|||||||
# Copyright 1999-2013 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Header: $
|
|
||||||
|
|
||||||
EAPI=5
|
|
||||||
|
|
||||||
DESCRIPTION="Docker complements LXC with a high-level API which operates at the process level."
|
|
||||||
HOMEPAGE="http://www.docker.io/"
|
|
||||||
SRC_URI=""
|
|
||||||
|
|
||||||
EGIT_REPO_URI="git://github.com/dotcloud/docker.git"
|
|
||||||
if [[ ${PV} == *9999 ]]; then
|
|
||||||
KEYWORDS=""
|
|
||||||
else
|
|
||||||
EGIT_COMMIT="v${PV}"
|
|
||||||
KEYWORDS="~amd64"
|
|
||||||
fi
|
|
||||||
|
|
||||||
inherit bash-completion-r1 git-2 linux-info systemd user
|
|
||||||
|
|
||||||
LICENSE="Apache-2.0"
|
|
||||||
SLOT="0"
|
|
||||||
IUSE="doc vim-syntax"
|
|
||||||
|
|
||||||
CDEPEND="
|
|
||||||
>=dev-db/sqlite-3.7.9:3
|
|
||||||
"
|
|
||||||
DEPEND="
|
|
||||||
${CDEPEND}
|
|
||||||
>=dev-lang/go-1.1.2
|
|
||||||
dev-vcs/git
|
|
||||||
dev-vcs/mercurial
|
|
||||||
doc? (
|
|
||||||
dev-python/sphinx
|
|
||||||
dev-python/sphinxcontrib-httpdomain
|
|
||||||
)
|
|
||||||
"
|
|
||||||
RDEPEND="
|
|
||||||
${CDEPEND}
|
|
||||||
!app-emulation/lxc-docker-bin
|
|
||||||
>=app-arch/tar-1.26
|
|
||||||
>=sys-apps/iproute2-3.5
|
|
||||||
>=net-firewall/iptables-1.4
|
|
||||||
>=app-emulation/lxc-0.8
|
|
||||||
>=dev-vcs/git-1.7
|
|
||||||
>=app-arch/xz-utils-4.9
|
|
||||||
|| (
|
|
||||||
sys-fs/aufs3
|
|
||||||
sys-kernel/aufs-sources
|
|
||||||
)
|
|
||||||
"
|
|
||||||
|
|
||||||
RESTRICT="strip"
|
|
||||||
|
|
||||||
CONFIG_CHECK="
|
|
||||||
~AUFS_FS
|
|
||||||
~BRIDGE
|
|
||||||
~MEMCG_SWAP
|
|
||||||
~NETFILTER_XT_MATCH_ADDRTYPE
|
|
||||||
~NF_NAT
|
|
||||||
~NF_NAT_NEEDED
|
|
||||||
"
|
|
||||||
|
|
||||||
# TODO AUFS will be replaced with device-mapper (requires sys-fs/lvm2[thin]) in 0.7
|
|
||||||
ERROR_AUFS_FS="AUFS_FS is required to be set if and only if aufs-sources are used"
|
|
||||||
|
|
||||||
ERROR_MEMCG_SWAP="MEMCG_SWAP is required if you wish to limit swap usage of containers"
|
|
||||||
|
|
||||||
pkg_setup() {
|
|
||||||
check_extra_config
|
|
||||||
}
|
|
||||||
|
|
||||||
src_unpack() {
|
|
||||||
git-2_src_unpack
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
export GOPATH="${WORKDIR}/gopath"
|
|
||||||
mkdir -p "$GOPATH" || die
|
|
||||||
|
|
||||||
# make sure docker itself is in our shiny new GOPATH
|
|
||||||
mkdir -p "${GOPATH}/src/github.com/dotcloud" || die
|
|
||||||
ln -sf "$(pwd -P)" "${GOPATH}/src/github.com/dotcloud/docker" || die
|
|
||||||
|
|
||||||
# we need our vendored deps, too
|
|
||||||
export GOPATH="$GOPATH:$(pwd -P)/vendor"
|
|
||||||
|
|
||||||
# time to build!
|
|
||||||
./hack/make.sh dynbinary || die
|
|
||||||
|
|
||||||
if use doc; then
|
|
||||||
emake -C docs docs || die
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
VERSION=$(cat VERSION)
|
|
||||||
newbin bundles/$VERSION/dynbinary/docker-$VERSION docker
|
|
||||||
exeinto /usr/libexec/docker
|
|
||||||
newexe bundles/$VERSION/dynbinary/dockerinit-$VERSION dockerinit
|
|
||||||
|
|
||||||
newinitd contrib/init/openrc/docker.initd docker
|
|
||||||
newconfd contrib/init/openrc/docker.confd docker
|
|
||||||
|
|
||||||
systemd_dounit contrib/init/systemd/docker.service
|
|
||||||
|
|
||||||
dodoc AUTHORS CONTRIBUTING.md CHANGELOG.md NOTICE README.md
|
|
||||||
if use doc; then
|
|
||||||
dohtml -r docs/_build/html/*
|
|
||||||
fi
|
|
||||||
|
|
||||||
dobashcomp contrib/completion/bash/*
|
|
||||||
|
|
||||||
insinto /usr/share/zsh/site-functions
|
|
||||||
doins contrib/completion/zsh/*
|
|
||||||
|
|
||||||
if use vim-syntax; then
|
|
||||||
insinto /usr/share/vim/vimfiles
|
|
||||||
doins -r contrib/vim-syntax/ftdetect
|
|
||||||
doins -r contrib/vim-syntax/syntax
|
|
||||||
fi
|
|
||||||
|
|
||||||
insinto /usr/share/${P}/contrib
|
|
||||||
doins contrib/README
|
|
||||||
cp -R "${S}/contrib"/* "${D}/usr/share/${P}/contrib/"
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
elog ""
|
|
||||||
elog "To use docker, the docker daemon must be running as root. To automatically"
|
|
||||||
elog "start the docker daemon at boot, add docker to the default runlevel:"
|
|
||||||
elog " rc-update add docker default"
|
|
||||||
elog "Similarly for systemd:"
|
|
||||||
elog " systemctl enable docker.service"
|
|
||||||
elog ""
|
|
||||||
|
|
||||||
# create docker group if the code checking for it in /etc/group exists
|
|
||||||
enewgroup docker
|
|
||||||
|
|
||||||
elog "To use docker as a non-root user, add yourself to the docker group."
|
|
||||||
elog ""
|
|
||||||
|
|
||||||
ewarn ""
|
|
||||||
ewarn "If you want your containers to have access to the public internet or even"
|
|
||||||
ewarn "the existing private network, IP Forwarding must be enabled:"
|
|
||||||
ewarn " sysctl -w net.ipv4.ip_forward=1"
|
|
||||||
ewarn "or more permanently:"
|
|
||||||
ewarn " echo net.ipv4.ip_forward = 1 > /etc/sysctl.d/${PN}.conf"
|
|
||||||
ewarn "Please be mindful of the security implications of enabling IP Forwarding."
|
|
||||||
ewarn ""
|
|
||||||
}
|
|
@ -1,151 +0,0 @@
|
|||||||
# Copyright 1999-2013 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Header: $
|
|
||||||
|
|
||||||
EAPI=5
|
|
||||||
|
|
||||||
DESCRIPTION="Docker complements LXC with a high-level API which operates at the process level."
|
|
||||||
HOMEPAGE="http://www.docker.io/"
|
|
||||||
SRC_URI=""
|
|
||||||
|
|
||||||
EGIT_REPO_URI="git://github.com/dotcloud/docker.git"
|
|
||||||
if [[ ${PV} == *9999 ]]; then
|
|
||||||
KEYWORDS=""
|
|
||||||
else
|
|
||||||
EGIT_COMMIT="v${PV}"
|
|
||||||
KEYWORDS="~amd64"
|
|
||||||
fi
|
|
||||||
|
|
||||||
inherit bash-completion-r1 git-2 linux-info systemd user
|
|
||||||
|
|
||||||
LICENSE="Apache-2.0"
|
|
||||||
SLOT="0"
|
|
||||||
IUSE="doc vim-syntax"
|
|
||||||
|
|
||||||
CDEPEND="
|
|
||||||
>=dev-db/sqlite-3.7.9:3
|
|
||||||
"
|
|
||||||
DEPEND="
|
|
||||||
${CDEPEND}
|
|
||||||
>=dev-lang/go-1.1.2
|
|
||||||
dev-vcs/git
|
|
||||||
dev-vcs/mercurial
|
|
||||||
doc? (
|
|
||||||
dev-python/sphinx
|
|
||||||
dev-python/sphinxcontrib-httpdomain
|
|
||||||
)
|
|
||||||
"
|
|
||||||
RDEPEND="
|
|
||||||
${CDEPEND}
|
|
||||||
!app-emulation/lxc-docker-bin
|
|
||||||
>=app-arch/tar-1.26
|
|
||||||
>=sys-apps/iproute2-3.5
|
|
||||||
>=net-firewall/iptables-1.4
|
|
||||||
>=app-emulation/lxc-0.8
|
|
||||||
>=dev-vcs/git-1.7
|
|
||||||
>=app-arch/xz-utils-4.9
|
|
||||||
|| (
|
|
||||||
sys-fs/aufs3
|
|
||||||
sys-kernel/aufs-sources
|
|
||||||
)
|
|
||||||
"
|
|
||||||
|
|
||||||
RESTRICT="strip"
|
|
||||||
|
|
||||||
CONFIG_CHECK="
|
|
||||||
~AUFS_FS
|
|
||||||
~BRIDGE
|
|
||||||
~MEMCG_SWAP
|
|
||||||
~NETFILTER_XT_MATCH_ADDRTYPE
|
|
||||||
~NF_NAT
|
|
||||||
~NF_NAT_NEEDED
|
|
||||||
"
|
|
||||||
|
|
||||||
# TODO AUFS will be replaced with device-mapper (requires sys-fs/lvm2[thin]) in 0.7
|
|
||||||
ERROR_AUFS_FS="AUFS_FS is required to be set if and only if aufs-sources are used"
|
|
||||||
|
|
||||||
ERROR_MEMCG_SWAP="MEMCG_SWAP is required if you wish to limit swap usage of containers"
|
|
||||||
|
|
||||||
pkg_setup() {
|
|
||||||
check_extra_config
|
|
||||||
}
|
|
||||||
|
|
||||||
src_unpack() {
|
|
||||||
git-2_src_unpack
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
export GOPATH="${WORKDIR}/gopath"
|
|
||||||
mkdir -p "$GOPATH" || die
|
|
||||||
|
|
||||||
# make sure docker itself is in our shiny new GOPATH
|
|
||||||
mkdir -p "${GOPATH}/src/github.com/dotcloud" || die
|
|
||||||
ln -sf "$(pwd -P)" "${GOPATH}/src/github.com/dotcloud/docker" || die
|
|
||||||
|
|
||||||
# we need our vendored deps, too
|
|
||||||
export GOPATH="$GOPATH:$(pwd -P)/vendor"
|
|
||||||
|
|
||||||
# time to build!
|
|
||||||
./hack/make.sh dynbinary || die
|
|
||||||
|
|
||||||
if use doc; then
|
|
||||||
emake -C docs docs || die
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
VERSION=$(cat VERSION)
|
|
||||||
newbin bundles/$VERSION/dynbinary/docker-$VERSION docker
|
|
||||||
exeinto /usr/libexec/docker
|
|
||||||
newexe bundles/$VERSION/dynbinary/dockerinit-$VERSION dockerinit
|
|
||||||
|
|
||||||
newinitd contrib/init/openrc/docker.initd docker
|
|
||||||
newconfd contrib/init/openrc/docker.confd docker
|
|
||||||
|
|
||||||
systemd_dounit contrib/init/systemd/docker.service
|
|
||||||
|
|
||||||
dodoc AUTHORS CONTRIBUTING.md CHANGELOG.md NOTICE README.md
|
|
||||||
if use doc; then
|
|
||||||
dohtml -r docs/_build/html/*
|
|
||||||
fi
|
|
||||||
|
|
||||||
dobashcomp contrib/completion/bash/*
|
|
||||||
|
|
||||||
insinto /usr/share/zsh/site-functions
|
|
||||||
doins contrib/completion/zsh/*
|
|
||||||
|
|
||||||
if use vim-syntax; then
|
|
||||||
insinto /usr/share/vim/vimfiles
|
|
||||||
doins -r contrib/vim-syntax/ftdetect
|
|
||||||
doins -r contrib/vim-syntax/syntax
|
|
||||||
fi
|
|
||||||
|
|
||||||
insinto /usr/share/${P}/contrib
|
|
||||||
doins contrib/README
|
|
||||||
cp -R "${S}/contrib"/* "${D}/usr/share/${P}/contrib/"
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
elog ""
|
|
||||||
elog "To use docker, the docker daemon must be running as root. To automatically"
|
|
||||||
elog "start the docker daemon at boot, add docker to the default runlevel:"
|
|
||||||
elog " rc-update add docker default"
|
|
||||||
elog "Similarly for systemd:"
|
|
||||||
elog " systemctl enable docker.service"
|
|
||||||
elog ""
|
|
||||||
|
|
||||||
# create docker group if the code checking for it in /etc/group exists
|
|
||||||
enewgroup docker
|
|
||||||
|
|
||||||
elog "To use docker as a non-root user, add yourself to the docker group."
|
|
||||||
elog ""
|
|
||||||
|
|
||||||
ewarn ""
|
|
||||||
ewarn "If you want your containers to have access to the public internet or even"
|
|
||||||
ewarn "the existing private network, IP Forwarding must be enabled:"
|
|
||||||
ewarn " sysctl -w net.ipv4.ip_forward=1"
|
|
||||||
ewarn "or more permanently:"
|
|
||||||
ewarn " echo net.ipv4.ip_forward = 1 > /etc/sysctl.d/${PN}.conf"
|
|
||||||
ewarn "Please be mindful of the security implications of enabling IP Forwarding."
|
|
||||||
ewarn ""
|
|
||||||
}
|
|
@ -1,6 +1,6 @@
|
|||||||
# Copyright 1999-2013 Gentoo Foundation
|
# Copyright 1999-2013 Gentoo Foundation
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
# $Header: $
|
# $Header: /var/cvsroot/gentoo-x86/app-emulation/docker/docker-0.7.0.ebuild,v 1.1 2013/11/26 15:17:48 gregkh Exp $
|
||||||
|
|
||||||
EAPI=5
|
EAPI=5
|
||||||
|
|
||||||
@ -20,10 +20,13 @@ inherit bash-completion-r1 git-2 linux-info systemd user
|
|||||||
|
|
||||||
LICENSE="Apache-2.0"
|
LICENSE="Apache-2.0"
|
||||||
SLOT="0"
|
SLOT="0"
|
||||||
IUSE="doc vim-syntax"
|
IUSE="aufs +device-mapper doc vim-syntax"
|
||||||
|
|
||||||
CDEPEND="
|
CDEPEND="
|
||||||
>=dev-db/sqlite-3.7.9:3
|
>=dev-db/sqlite-3.7.9:3
|
||||||
|
device-mapper? (
|
||||||
|
sys-fs/lvm2[thin]
|
||||||
|
)
|
||||||
"
|
"
|
||||||
DEPEND="
|
DEPEND="
|
||||||
${CDEPEND}
|
${CDEPEND}
|
||||||
@ -37,36 +40,48 @@ DEPEND="
|
|||||||
"
|
"
|
||||||
RDEPEND="
|
RDEPEND="
|
||||||
${CDEPEND}
|
${CDEPEND}
|
||||||
!app-emulation/lxc-docker-bin
|
!app-emulation/docker-bin
|
||||||
>=app-arch/tar-1.26
|
>=app-arch/tar-1.26
|
||||||
>=sys-apps/iproute2-3.5
|
>=sys-apps/iproute2-3.5
|
||||||
>=net-firewall/iptables-1.4
|
>=net-firewall/iptables-1.4
|
||||||
>=app-emulation/lxc-0.8
|
>=app-emulation/lxc-0.8
|
||||||
>=dev-vcs/git-1.7
|
>=dev-vcs/git-1.7
|
||||||
>=app-arch/xz-utils-4.9
|
>=app-arch/xz-utils-4.9
|
||||||
|
aufs? (
|
||||||
|| (
|
|| (
|
||||||
sys-fs/aufs3
|
sys-fs/aufs3
|
||||||
sys-kernel/aufs-sources
|
sys-kernel/aufs-sources
|
||||||
)
|
)
|
||||||
|
)
|
||||||
"
|
"
|
||||||
|
|
||||||
RESTRICT="strip"
|
RESTRICT="strip"
|
||||||
|
|
||||||
CONFIG_CHECK="
|
pkg_setup() {
|
||||||
~AUFS_FS
|
CONFIG_CHECK+="
|
||||||
~BRIDGE
|
~BRIDGE
|
||||||
~MEMCG_SWAP
|
~MEMCG_SWAP
|
||||||
~NETFILTER_XT_MATCH_ADDRTYPE
|
~NETFILTER_XT_MATCH_ADDRTYPE
|
||||||
~NF_NAT
|
~NF_NAT
|
||||||
~NF_NAT_NEEDED
|
~NF_NAT_NEEDED
|
||||||
"
|
"
|
||||||
|
|
||||||
# TODO AUFS will be replaced with device-mapper (requires sys-fs/lvm2[thin]) in 0.7
|
|
||||||
ERROR_AUFS_FS="AUFS_FS is required to be set if and only if aufs-sources are used"
|
|
||||||
|
|
||||||
ERROR_MEMCG_SWAP="MEMCG_SWAP is required if you wish to limit swap usage of containers"
|
ERROR_MEMCG_SWAP="MEMCG_SWAP is required if you wish to limit swap usage of containers"
|
||||||
|
|
||||||
pkg_setup() {
|
if use aufs; then
|
||||||
|
CONFIG_CHECK+="
|
||||||
|
~AUFS_FS
|
||||||
|
"
|
||||||
|
ERROR_AUFS_FS="AUFS_FS is required to be set if and only if aufs-sources are used"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if use device-mapper; then
|
||||||
|
CONFIG_CHECK+="
|
||||||
|
~BLK_DEV_DM
|
||||||
|
~DM_THIN_PROVISIONING
|
||||||
|
~EXT4_FS
|
||||||
|
"
|
||||||
|
fi
|
||||||
|
|
||||||
check_extra_config
|
check_extra_config
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -86,10 +101,12 @@ src_compile() {
|
|||||||
export GOPATH="$GOPATH:$(pwd -P)/vendor"
|
export GOPATH="$GOPATH:$(pwd -P)/vendor"
|
||||||
|
|
||||||
# time to build!
|
# time to build!
|
||||||
|
export CGO_CFLAGS="-I${ROOT}/usr/include"
|
||||||
|
export CGO_LDFLAGS="-L${ROOT}/usr/lib"
|
||||||
./hack/make.sh dynbinary || die
|
./hack/make.sh dynbinary || die
|
||||||
|
|
||||||
if use doc; then
|
if use doc; then
|
||||||
emake -C docs docs || die
|
emake -C docs docs man || die
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -102,11 +119,12 @@ src_install() {
|
|||||||
newinitd contrib/init/openrc/docker.initd docker
|
newinitd contrib/init/openrc/docker.initd docker
|
||||||
newconfd contrib/init/openrc/docker.confd docker
|
newconfd contrib/init/openrc/docker.confd docker
|
||||||
|
|
||||||
systemd_dounit contrib/init/systemd/docker.service
|
systemd_dounit "${FILESDIR}/docker.service"
|
||||||
|
|
||||||
dodoc AUTHORS CONTRIBUTING.md CHANGELOG.md NOTICE README.md
|
dodoc AUTHORS CONTRIBUTING.md CHANGELOG.md NOTICE README.md
|
||||||
if use doc; then
|
if use doc; then
|
||||||
dohtml -r docs/_build/html/*
|
dohtml -r docs/_build/html/*
|
||||||
|
doman docs/_build/man/*
|
||||||
fi
|
fi
|
||||||
|
|
||||||
dobashcomp contrib/completion/bash/*
|
dobashcomp contrib/completion/bash/*
|
@ -1,18 +0,0 @@
|
|||||||
# /etc/conf.d/docker: config file for /etc/init.d/docker
|
|
||||||
|
|
||||||
# where the docker daemon output gets piped
|
|
||||||
#DOCKER_LOGFILE="/var/log/docker.log"
|
|
||||||
|
|
||||||
# where docker's pid get stored
|
|
||||||
#DOCKER_PIDFILE="/run/docker.pid"
|
|
||||||
|
|
||||||
# where the docker daemon itself is run from
|
|
||||||
#DOCKER_BINARY="/usr/bin/docker"
|
|
||||||
|
|
||||||
# uncomment this for a simple workaround to
|
|
||||||
# https://github.com/dotcloud/docker/issues/1422
|
|
||||||
#DOCKER_WORKAROUND_1422="1"
|
|
||||||
|
|
||||||
# if you find that the default DOCKER_WORKAROUND_1422 delay of one second
|
|
||||||
# is not sufficient, try uncommenting and increasing this value
|
|
||||||
#DOCKER_WORKAROUND_1422_DELAY="1"
|
|
@ -1,56 +0,0 @@
|
|||||||
#!/sbin/runscript
|
|
||||||
# Copyright 1999-2013 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Header: /var/cvsroot/gentoo-x86/app-emulation/docker/files/docker-r2.initd,v 1.1 2013/09/25 03:22:15 gregkh Exp $
|
|
||||||
|
|
||||||
DOCKER_LOGFILE=${DOCKER_LOGFILE:-/var/log/${SVCNAME}.log}
|
|
||||||
DOCKER_PIDFILE=${DOCKER_PIDFILE:-/run/${SVCNAME}.pid}
|
|
||||||
DOCKER_BINARY=${DOCKER_BINARY:-/usr/bin/docker}
|
|
||||||
DOCKER_WORKAROUND_1422=${DOCKER_WORKAROUND_1422:-0}
|
|
||||||
DOCKER_WORKAROUND_1422_DELAY=${DOCKER_WORKAROUND_1422_DELAY:-1}
|
|
||||||
|
|
||||||
start() {
|
|
||||||
touch "$DOCKER_LOGFILE"
|
|
||||||
chown root:docker "$DOCKER_LOGFILE"
|
|
||||||
chmod 0644 "$DOCKER_LOGFILE"
|
|
||||||
|
|
||||||
ebegin "Starting docker daemon"
|
|
||||||
start-stop-daemon --start --background \
|
|
||||||
--exec "$DOCKER_BINARY" \
|
|
||||||
--pidfile "$DOCKER_PIDFILE" \
|
|
||||||
--stdout "$DOCKER_LOGFILE" \
|
|
||||||
--stderr "$DOCKER_LOGFILE" \
|
|
||||||
-- -d -p "$DOCKER_PIDFILE"
|
|
||||||
eend $?
|
|
||||||
ret=$?
|
|
||||||
|
|
||||||
if [ $ret -eq 0 ] \
|
|
||||||
&& [ "$DOCKER_WORKAROUND_1422" ] \
|
|
||||||
&& [ "$DOCKER_WORKAROUND_1422" -gt 0 ] \
|
|
||||||
; then
|
|
||||||
# see https://github.com/dotcloud/docker/issues/1422
|
|
||||||
ewarn "Working around gh#1422 (via busybox image); this may take a moment"
|
|
||||||
|
|
||||||
# we were calling "docker run" more quickly than "docker -d" could get
|
|
||||||
# fired up, so our workaround wasn't successful without a short delay
|
|
||||||
sleep $DOCKER_WORKAROUND_1422_DELAY
|
|
||||||
|
|
||||||
# TODO when we get https://github.com/dotcloud/docker/pull/1589, these
|
|
||||||
# both need -rm so we clean up after ourselves (thanks, @eliasp!)
|
|
||||||
docker run -i -t busybox true &> /dev/null || true
|
|
||||||
# first run will fail, so we ignore its output and result and run again
|
|
||||||
docker run -i -t busybox true
|
|
||||||
|
|
||||||
ewend $?
|
|
||||||
fi
|
|
||||||
|
|
||||||
return $ret
|
|
||||||
}
|
|
||||||
|
|
||||||
stop() {
|
|
||||||
ebegin "Stopping docker daemon"
|
|
||||||
start-stop-daemon --stop \
|
|
||||||
--exec "$DOCKER_BINARY" \
|
|
||||||
--pidfile "$DOCKER_PIDFILE"
|
|
||||||
eend $?
|
|
||||||
}
|
|
@ -1,13 +0,0 @@
|
|||||||
# /etc/conf.d/docker: config file for /etc/init.d/docker
|
|
||||||
|
|
||||||
# where the docker daemon output gets piped
|
|
||||||
#DOCKER_LOGFILE="/var/log/docker.log"
|
|
||||||
|
|
||||||
# where docker's pid get stored
|
|
||||||
#DOCKER_PIDFILE="/run/docker.pid"
|
|
||||||
|
|
||||||
# where the docker daemon itself is run from
|
|
||||||
#DOCKER_BINARY="/usr/bin/docker"
|
|
||||||
|
|
||||||
# any other random options you want to pass to docker
|
|
||||||
DOCKER_OPTS=""
|
|
@ -1,31 +0,0 @@
|
|||||||
#!/sbin/runscript
|
|
||||||
# Copyright 1999-2013 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Header: $
|
|
||||||
|
|
||||||
DOCKER_LOGFILE=${DOCKER_LOGFILE:-/var/log/${SVCNAME}.log}
|
|
||||||
DOCKER_PIDFILE=${DOCKER_PIDFILE:-/run/${SVCNAME}.pid}
|
|
||||||
DOCKER_BINARY=${DOCKER_BINARY:-/usr/bin/docker}
|
|
||||||
DOCKER_OPTS=${DOCKER_OPTS:-}
|
|
||||||
|
|
||||||
start() {
|
|
||||||
checkpath -f -m 0644 -o root:docker "$DOCKER_LOGFILE"
|
|
||||||
|
|
||||||
ebegin "Starting docker daemon"
|
|
||||||
start-stop-daemon --start --background \
|
|
||||||
--exec "$DOCKER_BINARY" \
|
|
||||||
--pidfile "$DOCKER_PIDFILE" \
|
|
||||||
--stdout "$DOCKER_LOGFILE" \
|
|
||||||
--stderr "$DOCKER_LOGFILE" \
|
|
||||||
-- -d -p "$DOCKER_PIDFILE" \
|
|
||||||
$DOCKER_OPTS
|
|
||||||
eend $?
|
|
||||||
}
|
|
||||||
|
|
||||||
stop() {
|
|
||||||
ebegin "Stopping docker daemon"
|
|
||||||
start-stop-daemon --stop \
|
|
||||||
--exec "$DOCKER_BINARY" \
|
|
||||||
--pidfile "$DOCKER_PIDFILE"
|
|
||||||
eend $?
|
|
||||||
}
|
|
@ -1,31 +0,0 @@
|
|||||||
#!/sbin/runscript
|
|
||||||
# Copyright 1999-2013 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Header: /var/cvsroot/gentoo-x86/app-emulation/docker/files/docker.initd,v 1.1 2013/09/25 03:22:15 gregkh Exp $
|
|
||||||
|
|
||||||
DOCKER_LOGFILE=${DOCKER_LOGFILE:-/var/log/${SVCNAME}.log}
|
|
||||||
DOCKER_PIDFILE=${DOCKER_PIDFILE:-/run/${SVCNAME}.pid}
|
|
||||||
DOCKER_BINARY=${DOCKER_BINARY:-/usr/bin/docker}
|
|
||||||
|
|
||||||
start() {
|
|
||||||
touch "$DOCKER_LOGFILE"
|
|
||||||
chown root:docker "$DOCKER_LOGFILE"
|
|
||||||
chmod 0644 "$DOCKER_LOGFILE"
|
|
||||||
|
|
||||||
ebegin "Starting docker daemon"
|
|
||||||
start-stop-daemon --start --background \
|
|
||||||
--exec "$DOCKER_BINARY" \
|
|
||||||
--pidfile "$DOCKER_PIDFILE" \
|
|
||||||
--stdout "$DOCKER_LOGFILE" \
|
|
||||||
--stderr "$DOCKER_LOGFILE" \
|
|
||||||
-- -d -p "$DOCKER_PIDFILE"
|
|
||||||
eend $?
|
|
||||||
}
|
|
||||||
|
|
||||||
stop() {
|
|
||||||
ebegin "Stopping docker daemon"
|
|
||||||
start-stop-daemon --stop \
|
|
||||||
--exec "$DOCKER_BINARY" \
|
|
||||||
--pidfile "$DOCKER_PIDFILE"
|
|
||||||
eend $?
|
|
||||||
}
|
|
@ -1,12 +1,13 @@
|
|||||||
[Unit]
|
[Unit]
|
||||||
Description=Easily create lightweight, portable, self-sufficient containers from any application!
|
Description=Docker Application Container Engine
|
||||||
Requires=network.target
|
Documentation=http://docs.docker.io
|
||||||
After=multi-user.target
|
After=network.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=simple
|
|
||||||
ExecStartPre=/bin/mount --make-rprivate /
|
ExecStartPre=/bin/mount --make-rprivate /
|
||||||
ExecStart=/usr/bin/docker -d
|
# Run docker but don't have docker automatically restart
|
||||||
|
# containers. This is a job for systemd and unit files.
|
||||||
|
ExecStart=/usr/bin/docker -d -r=false
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=multi-user.target
|
WantedBy=multi-user.target
|
||||||
|
Loading…
x
Reference in New Issue
Block a user