Setup initial project
This commit is contained in:
commit
db79af06f7
119 changed files with 20761 additions and 0 deletions
66
deploy.ps1
Normal file
66
deploy.ps1
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
#Requires -Version 5.1
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Rebuild and redeploy MeshiTrack Docker images.
|
||||
|
||||
.PARAMETER Services
|
||||
One or more services to rebuild. Defaults to 'api' and 'web'.
|
||||
Valid values: api, web
|
||||
|
||||
.PARAMETER NoCache
|
||||
Pass --no-cache to docker compose build.
|
||||
|
||||
.PARAMETER Target
|
||||
Build target: 'development' (default) or 'production'.
|
||||
|
||||
.EXAMPLE
|
||||
.\deploy.ps1
|
||||
.\deploy.ps1 -Services api
|
||||
.\deploy.ps1 -NoCache
|
||||
.\deploy.ps1 -Target production -NoCache
|
||||
#>
|
||||
param(
|
||||
[ValidateSet('api', 'web')]
|
||||
[string[]]$Services = @('api', 'web'),
|
||||
|
||||
[switch]$NoCache,
|
||||
|
||||
[ValidateSet('development', 'production')]
|
||||
[string]$Target = 'development'
|
||||
)
|
||||
|
||||
Set-StrictMode -Version Latest
|
||||
$ErrorActionPreference = 'Stop'
|
||||
|
||||
$ComposeFile = Join-Path $PSScriptRoot 'docker\docker-compose.yml'
|
||||
|
||||
if (-not (Test-Path $ComposeFile)) {
|
||||
Write-Error "docker-compose.yml not found at: $ComposeFile"
|
||||
exit 1
|
||||
}
|
||||
|
||||
$BuildArgs = @('compose', '-f', $ComposeFile, 'build', '--build-arg', "target=$Target")
|
||||
if ($NoCache) {
|
||||
$BuildArgs += '--no-cache'
|
||||
}
|
||||
$BuildArgs += $Services
|
||||
|
||||
Write-Host "Building: $($Services -join ', ') [target=$Target$(if ($NoCache) { ', no-cache' })]"
|
||||
& docker @BuildArgs
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
Write-Error "docker compose build failed (exit $LASTEXITCODE)"
|
||||
exit $LASTEXITCODE
|
||||
}
|
||||
|
||||
$UpArgs = @('compose', '-f', $ComposeFile, 'up', '-d', '--force-recreate')
|
||||
$UpArgs += $Services
|
||||
|
||||
Write-Host "Deploying: $($Services -join ', ')"
|
||||
& docker @UpArgs
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
Write-Error "docker compose up failed (exit $LASTEXITCODE)"
|
||||
exit $LASTEXITCODE
|
||||
}
|
||||
|
||||
Write-Host "Done. Running containers:"
|
||||
& docker compose -f $ComposeFile ps
|
||||
Loading…
Add table
Add a link
Reference in a new issue