Browse Source

new package

master
parent
commit
c38232d2c8
  1. 57
      docker-compose/docker-compose.bash
  2. 80
      docker-compose/docker-compose.spec

57
docker-compose/docker-compose.bash

@ -0,0 +1,57 @@
#!@bash@
##
## docker-compose -- run docker-compose in a container
##
set -e
# setup options for connecting to Docker host
if [ -z "$DOCKER_HOST" ]; then
DOCKER_HOST="/var/run/docker.sock"
fi
if [ -S "$DOCKER_HOST" ]; then
DOCKER_ADDR="-v $DOCKER_HOST:$DOCKER_HOST -e DOCKER_HOST"
else
DOCKER_ADDR="-e DOCKER_HOST -e DOCKER_TLS_VERIFY -e DOCKER_CERT_PATH"
fi
# setup volume mounts for compose config and context
if [ "$(pwd)" != '/' ]; then
VOLUMES="-v $(pwd):$(pwd)"
fi
if [ -n "$COMPOSE_FILE" ]; then
COMPOSE_OPTIONS="$COMPOSE_OPTIONS -e COMPOSE_FILE=$COMPOSE_FILE"
compose_dir=$(sealpath $(dirname $COMPOSE_FILE))
fi
if [ -n "$compose_dir" ]; then
VOLUMES="$VOLUMES -v $compose_dir:$compose_dir"
fi
if [ -n "$HOME" ]; then
VOLUMES="$VOLUMES -v $HOME:$HOME -v $HOME:/root"
fi
# only allocate tty if we detect one
if [ -t 0 ]; then
if [ -t 1 ]; then
DOCKER_RUN_OPTIONS="$DOCKER_RUN_OPTIONS -t"
fi
else
DOCKER_RUN_OPTIONS="$DOCKER_RUN_OPTIONS -i"
fi
# handle userns security
if [ ! -z "$(docker info 2>/dev/null | grep userns)" ]; then
DOCKER_RUN_OPTIONS="$DOCKER_RUN_OPTIONS --userns=host"
fi
exec @l_prefix@/bin/docker \
run \
--rm \
$DOCKER_RUN_OPTIONS \
$DOCKER_ADDR \
$COMPOSE_OPTIONS \
$VOLUMES \
-w "$(pwd)" \
docker/compose:@version@ \
"$@"

80
docker-compose/docker-compose.spec

@ -0,0 +1,80 @@
##
## docker-compose.spec -- OpenPKG RPM Package Specification
## Copyright (c) 2000-2018 OpenPKG Project <http://openpkg.org/>
##
## Permission to use, copy, modify, and distribute this software for
## any purpose with or without fee is hereby granted, provided that
## the above copyright notice and this permission notice appear in all
## copies.
##
## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
## SUCH DAMAGE.
##
# package information
Name: docker-compose
Summary: Docker Container Composition
URL: https://docs.docker.com/compose/
Vendor: Docker Inc.
Packager: OpenPKG Project
Distribution: OpenPKG Community
Class: EVAL
Group: Filesystem
License: Apache
Version: 1.23.1
Release: 20181111
# list of sources
Source0: docker-compose.bash
# build information
BuildPreReq: OpenPKG, openpkg >= 20160101
PreReq: OpenPKG, openpkg >= 20160101, docker
%description
Docker Compose is a tool for defining and running multi-container
Docker applications. With Docker Compose, you use a Compose file to
configure your application's services. Then, using a single command,
you create and start all the services from your configuration.
%track
prog docker-compose = {
version = %{version}
url = https://github.com/docker/compose/releases
regex = (__VER__)\.tar\.gz
}
%prep
%setup -q -T -c
%build
%install
# create directory hierarchy
%{l_shtool} mkdir -f -p -m 755 \
$RPM_BUILD_ROOT%{l_prefix}/bin
# install program
%{l_shtool} install -c -m 755 %{l_value -s -a} \
-e 's;@bash@;%{l_bash};g' \
-e 's;@version@;%{version};g' \
%{SOURCE docker-compose.bash} \
$RPM_BUILD_ROOT%{l_prefix}/bin/docker-compose
# determine installation files
%{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
%files -f files
%clean
Loading…
Cancel
Save