add upstream docker package from alpine community aports

Signed-off-by: Justin Cormack <justin.cormack@unikernel.com>
This commit is contained in:
Justin Cormack 2015-12-17 16:02:31 +00:00
parent 00692fd77e
commit b621868d15
3 changed files with 141 additions and 0 deletions

View File

@ -0,0 +1,101 @@
# Maintainer: Eivind Uggedal <eivind@uggedal.com>
pkgname=docker
pkgver=1.9.1
pkgrel=2
_gitcommit=a34a1d5
pkgdesc="Pack, ship and run any application as a lightweight container"
url="http://www.docker.io/"
arch="all"
license="ASL 2.0"
depends="iptables git xz"
depends_dev=""
makedepends="go sqlite-dev btrfs-progs-dev bash linux-headers"
options="!strip"
install="$pkgname.pre-install"
subpackages="
$pkgname-bash-completion:bashcomp
$pkgname-zsh-completion:zshcomp
$pkgname-vim:vim
"
source="
$pkgname-$pkgver.tar.gz::https://github.com/docker/docker/archive/v$pkgver.tar.gz
openrc-fixes.patch
"
_builddir="$srcdir"/$pkgname-$pkgver
_buildtags="exclude_graphdriver_aufs exclude_graphdriver_devicemapper"
prepare() {
local i
cd "$_builddir"
for i in $source; do
case $i in
*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
esac
done
}
build() {
cd "$_builddir"
export AUTO_GOPATH=1
export DOCKER_GITCOMMIT=$_gitcommit
export DOCKER_BUILDTAGS=$_buildtags
unset CC # prevent possible ccache issues
./hack/make.sh dynbinary
}
package() {
cd "$_builddir"
local ver=$(cat VERSION)
install -Dm755 bundles/$ver/dynbinary/docker-$ver \
"$pkgdir"/usr/bin/docker
install -Dm755 bundles/$ver/dynbinary/dockerinit-$ver \
"$pkgdir"/usr/lib/docker/dockerinit
install -Dm755 contrib/init/openrc/docker.initd \
"$pkgdir"/etc/init.d/docker
install -Dm644 contrib/init/openrc/docker.confd \
"$pkgdir"/etc/conf.d/docker
}
bashcomp() {
pkgdesc="Bash completion for Docker"
arch="noarch"
depends=""
install_if="$pkgname=$pkgver-r$pkgrel bash-completion"
install -Dm644 "$_builddir"/contrib/completion/bash/$pkgname \
"$subpkgdir"/usr/share/bash-completion/completions/$pkgname
}
zshcomp() {
pkgdesc="Zsh completion for $pkgname"
arch="noarch"
depends=""
install_if="$pkgname=$pkgver-r$pkgrel zsh"
install -Dm644 "$_builddir"/contrib/completion/zsh/_$pkgname \
"$subpkgdir"/usr/share/zsh/site-functions/_$pkgname || return 1
}
vim() {
depends=""
pkgdesc="Vim syntax for Docker"
arch="noarch"
local f=
for f in ftdetect/dockerfile.vim syntax/dockerfile.vim; do
install -Dm644 "$_builddir"/contrib/syntax/vim/$f \
"$subpkgdir"/usr/share/vim/vimfiles/$f
done
}
md5sums="e00baca222046de0359b1b2c066a4eb7 docker-1.9.1.tar.gz
506e32a6157a7f92e67511111fba6fe8 openrc-fixes.patch"
sha256sums="ff0ad9647b756381758a16440a48e6f3c8615bbc903e53680569aac0b0a85157 docker-1.9.1.tar.gz
864d229e21dfa6c931b29b908093302a48837ddb1aa4205088f6f7fd4d7da4e3 openrc-fixes.patch"
sha512sums="db9db1d5095b2afe2285265414c36026d2b42d5547301d7d462151b81553f33e242b403b566e7835727d51b77e3176c049f1e9f37f60b59b3c66b95403c97b9d docker-1.9.1.tar.gz
1162f62e8a7a5ded0c54cfe46014449efd67491bdb678fa22862117adb08206c909a3f98b0062125d25256dc1f48596b696bd4b19a8804d2862e758678a8bb62 openrc-fixes.patch"

View File

@ -0,0 +1,6 @@
#!/bin/sh
if ! getent group docker >/dev/null; then
addgroup -S docker
fi
exit 0

View File

@ -0,0 +1,34 @@
diff --git a/contrib/init/openrc/docker.initd b/contrib/init/openrc/docker.initd
index 26fa8ef..ea8a3b2 100644
--- a/contrib/init/openrc/docker.initd
+++ b/contrib/init/openrc/docker.initd
@@ -9,11 +9,18 @@ DOCKER_LOGFILE="${DOCKER_LOGFILE:-/var/log/${RC_SVCNAME}.log}"
start_stop_daemon_args="--background \
--stderr \"${DOCKER_LOGFILE}\" --stdout \"${DOCKER_LOGFILE}\""
+grsecdir=/proc/sys/kernel/grsecurity
+
start_pre() {
checkpath -f -m 0644 -o root:docker "$DOCKER_LOGFILE"
+ for i in $disable_grsec; do
+ if [ -e "$grsecdir/$i" ]; then
+ einfo " Disabling $i"
+ echo 0 > "$grsecdir/$i"
+ fi
+ done
ulimit -n 1048576
- ulimit -u 1048576
return 0
}
--- a/contrib/init/openrc/docker.confd 2015-02-10 17:14:37.000000000 -0100
+++ b/contrib/init/openrc/docker.confd 2015-03-31 14:52:47.323685914 -0200
@@ -11,3 +11,6 @@
# any other random options you want to pass to docker
DOCKER_OPTS=""
+
+# disable grsecurity features
+#disable_grsec="chroot_deny_chmod chroot_deny_mknod"