mirror of
https://github.com/la5nta/pat
synced 2026-08-07 22:32:06 -04:00
33 lines
1.1 KiB
Bash
Executable file
33 lines
1.1 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
set -e
|
|
cd "$(dirname "$0")"
|
|
|
|
# Build the Docker image
|
|
echo "Building web assets with Docker..."
|
|
docker build -q -t pat-web-builder .
|
|
|
|
# Create named volumes for caching
|
|
docker volume create pat-web-node-modules >/dev/null 2>&1 || true
|
|
docker volume create pat-web-nvm-cache >/dev/null 2>&1 || true
|
|
|
|
# Run the container with volume mounts for caching and bind mount for source
|
|
if [[ "$1" == "dev" ]]; then
|
|
echo "Starting dev server on port 8081..."
|
|
docker run --rm -it \
|
|
-v "$(pwd):/app" \
|
|
-v pat-web-node-modules:/app/node_modules \
|
|
-v pat-web-nvm-cache:/home/node/.nvm \
|
|
-w /app \
|
|
-p 8081:8081 \
|
|
pat-web-builder \
|
|
"nvm install && nvm use && npm install && npx webpack-dev-server --mode=development --port=8081 --host 0.0.0.0"
|
|
else
|
|
echo "Running npm build..."
|
|
docker run --rm \
|
|
-v "$(pwd):/app" \
|
|
-v pat-web-node-modules:/app/node_modules \
|
|
-v pat-web-nvm-cache:/home/node/.nvm \
|
|
-w /app \
|
|
pat-web-builder \
|
|
"nvm install && nvm use && npm ci && npm run production"
|
|
fi
|