mirror of
https://github.com/docker/compose.git
synced 2025-04-08 17:05:13 +02:00
This script assumes the typical environment that Windows users operate, namely, VirtualBox running the boot2docker ISO, managed by docker-machine. I wrote this script for my Windows using colleagues and first placed it in the public domain as a gist: https://gist.github.com/au-phiware/25213e72c80040f398ba In short, that script works for me. I have adapted that script to use the (yet to be) official image (docker/compose:latest) and also added an extra environment variable to provide additional options to docker run. Signed-off-by: Corin Lawson <corin@phiware.com.au>
23 lines
893 B
PowerShell
23 lines
893 B
PowerShell
# Run docker-compose in a container via boot2docker.
|
|
#
|
|
# The current directory will be mirrored as a volume and additional
|
|
# volumes (or any other options) can be mounted by using
|
|
# $Env:DOCKER_COMPOSE_OPTIONS.
|
|
|
|
if ($Env:DOCKER_COMPOSE_VERSION -eq $null -or $Env:DOCKER_COMPOSE_VERSION.Length -eq 0) {
|
|
$Env:DOCKER_COMPOSE_VERSION = "latest"
|
|
}
|
|
|
|
if ($Env:DOCKER_COMPOSE_OPTIONS -eq $null) {
|
|
$Env:DOCKER_COMPOSE_OPTIONS = ""
|
|
}
|
|
|
|
if (-not $Env:DOCKER_HOST) {
|
|
docker-machine env --shell=powershell default | Invoke-Expression
|
|
if (-not $?) { exit $LastExitCode }
|
|
}
|
|
|
|
$local="/$($PWD -replace '^(.):(.*)$', '"$1".ToLower()+"$2".Replace("\","/")' | Invoke-Expression)"
|
|
docker run --rm -ti -v /var/run/docker.sock:/var/run/docker.sock -v "${local}:$local" -w "$local" $Env:DOCKER_COMPOSE_OPTIONS "docker/compose:$Env:DOCKER_COMPOSE_VERSION" $args
|
|
exit $LastExitCode
|