update
This commit is contained in:
parent
377516ab62
commit
cb97070442
2 changed files with 119 additions and 13 deletions
41
scripts/validate-docker.ps1
Normal file
41
scripts/validate-docker.ps1
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
param(
|
||||
[string]$Image = "nginx:alpine"
|
||||
)
|
||||
|
||||
$ErrorActionPreference = "Stop"
|
||||
|
||||
$repoRoot = Split-Path -Parent $PSScriptRoot
|
||||
|
||||
$serverSnippetConfig = @(
|
||||
"events {}"
|
||||
""
|
||||
"http {"
|
||||
" include /etc/nginx/mime.types;"
|
||||
" default_type application/octet-stream;"
|
||||
""
|
||||
" include /etc/nginx/kit/http/websocket-map.conf;"
|
||||
""
|
||||
" include /etc/nginx/kit/examples/example.com.conf;"
|
||||
"}"
|
||||
) -join "\n"
|
||||
|
||||
$serverSnippetConfigShell = $serverSnippetConfig -replace "\\", "\\\\" -replace "'", "'\"'\"'" -replace "`n", "\\n"
|
||||
|
||||
$containerCommand = @(
|
||||
"set -eu"
|
||||
"apk add --no-cache openssl >/dev/null"
|
||||
"mkdir -p /etc/nginx/snippets/cert /etc/ssl/certimate /tmp/nginx-kit/snippets/cert"
|
||||
"openssl req -x509 -nodes -newkey rsa:2048 -keyout /etc/ssl/certimate/example.com.key -out /etc/ssl/certimate/example.com.crt -subj '/CN=example.com' -days 1 >/dev/null 2>&1"
|
||||
"cp /etc/nginx/kit/templates/cert/example.com.conf /etc/nginx/snippets/cert/mydomain.com.conf"
|
||||
"cp /etc/nginx/kit/templates/cert/example.com.conf /tmp/nginx-kit/snippets/cert/mydomain.com.conf"
|
||||
"ln -s /etc/nginx/kit /tmp/nginx-kit/kit"
|
||||
"printf '%b' '$serverSnippetConfigShell' > /tmp/nginx-kit/server-snippet.nginx.conf"
|
||||
"echo 'Validating examples/example.com.conf'"
|
||||
"nginx -t -c /tmp/nginx-kit/server-snippet.nginx.conf"
|
||||
"echo 'Validating examples/reverse-proxy.nginx.conf'"
|
||||
"nginx -t -c /etc/nginx/kit/examples/reverse-proxy.nginx.conf"
|
||||
) -join "; "
|
||||
|
||||
docker run --rm `
|
||||
-v "${repoRoot}:/etc/nginx/kit:ro" `
|
||||
$Image sh -lc $containerCommand
|
||||
Loading…
Add table
Add a link
Reference in a new issue