41 lines
1.3 KiB
Bash
41 lines
1.3 KiB
Bash
#!/usr/bin/env bash
|
|
set -e
|
|
|
|
HOST="root@155.212.186.39"
|
|
SSH_KEY="$HOME/.ssh/beget"
|
|
SRC_DIR="$(cd "$(dirname "$0")" && pwd)/public/"
|
|
|
|
echo "📦 Deploy mamadaevv.site..."
|
|
echo "Src: $SRC_DIR"
|
|
|
|
REMOTE_INFO=$(ssh -i "$SSH_KEY" -o StrictHostKeyChecking=no "$HOST" '
|
|
CONTAINER=$(docker ps --format "{{.Names}}" | grep "s9mrcps8xw02r1dak0fsznix" | head -1)
|
|
VOLUME_PATH=$(docker inspect "$CONTAINER" 2>/dev/null | python3 -c "
|
|
import sys,json
|
|
mounts=json.load(sys.stdin)[0].get(\"Mounts\",[])
|
|
print([m[\"Source\"] for m in mounts if m[\"Destination\"]==\"/usr/share/nginx/html\"][0])
|
|
")
|
|
echo "$CONTAINER|$VOLUME_PATH"
|
|
')
|
|
|
|
IFS='|' read -r CONTAINER VOLUME_PATH <<< "$REMOTE_INFO"
|
|
echo "Container: $CONTAINER"
|
|
echo "Volume: $VOLUME_PATH"
|
|
|
|
# Копируем файлы
|
|
cd "$SRC_DIR"
|
|
tar cf - . | ssh -i "$SSH_KEY" -o StrictHostKeyChecking=no "$HOST" \
|
|
"tar xf - -C $VOLUME_PATH"
|
|
|
|
# Фикс MIME для .mjs (plyr.min.mjs модуль)
|
|
ssh -i "$SSH_KEY" -o StrictHostKeyChecking=no "$HOST" \
|
|
"docker exec $CONTAINER sh -c \"
|
|
if ! grep -q 'application/javascript mjs' /etc/nginx/mime.types 2>/dev/null; then
|
|
sed -i 's|application/wasm|application/javascript mjs;\\n application/wasm|' /etc/nginx/mime.types
|
|
nginx -s reload && echo 'MIME fix applied'
|
|
fi
|
|
\"" 2>/dev/null || true
|
|
|
|
echo ""
|
|
echo "✅ Done! https://mamadaevv.site"
|