faas/deploy_stack.ps1
John McCabe 7d5955b6f2 Check that Docker is in Swarm mode
This commit updates deploy_stack.ps1 to check that Docker is running in
Swarm mode before proceeding.

Signed-off-by: John McCabe <john@johnmccabe.net>
2018-11-04 20:13:18 +00:00

45 lines
1.3 KiB
PowerShell

#!ps1
if (Get-Command docker -errorAction SilentlyContinue)
{
docker node ls 2>&1 | out-null
if($?)
{
$user_secret = "basic-auth-user"
docker secret inspect $user_secret 2>&1 | out-null
if($?)
{
Write-Host "$user_secret secret exists"
}
else
{
$user = Read-Host 'Admin User?'
$user | docker secret create $user_secret -
}
$password_secret = "basic-auth-password"
docker secret inspect $password_secret 2>&1 | out-null
if($?)
{
Write-Host "$password_secret secret exists"
}
else
{
$pass = Read-Host 'Password?' -AsSecureString
[Runtime.InteropServices.Marshal]::PtrToStringAuto([Runtime.InteropServices.Marshal]::SecureStringToBSTR($pass)) | docker secret create $password_secret -
}
Write-Host "Deploying stack"
docker stack deploy func --compose-file ./docker-compose.yml
}
else
{
Write-Host "Docker not in swarm mode, please initialise the cluster (`docker swarm init`) and retry"
}
}
else
{
Write-Host "Unable to find docker command, please install Docker (https://www.docker.com/) and retry"
}