-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdeploy.sh
More file actions
executable file
·32 lines (25 loc) · 912 Bytes
/
deploy.sh
File metadata and controls
executable file
·32 lines (25 loc) · 912 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/bin/bash
set -e
SERVER="root@39.96.203.251"
REMOTE_DIR="/opt/storytelling"
IMAGE_TAR="storytelling-latest.tar"
echo "=== 构建镜像 (amd64) ==="
make build-amd64
echo "=== 导出镜像 ==="
docker save -o $IMAGE_TAR storytelling:latest-amd64
echo "=== 上传到服务器 ==="
ssh $SERVER "mkdir -p $REMOTE_DIR/out/audio $REMOTE_DIR/out/deep $REMOTE_DIR/.sessions && chmod -R 777 $REMOTE_DIR/out $REMOTE_DIR/.sessions"
scp $IMAGE_TAR .env docker-compose.prod.yml $SERVER:$REMOTE_DIR/
echo "=== 部署服务 ==="
ssh $SERVER "cd $REMOTE_DIR && \
mv docker-compose.prod.yml docker-compose.yml && \
docker load -i $IMAGE_TAR && \
docker tag storytelling:latest-amd64 storytelling:latest && \
docker-compose down 2>/dev/null || true && \
docker-compose up -d && \
rm -f $IMAGE_TAR && \
docker-compose ps"
rm -f $IMAGE_TAR
echo ""
echo "=== 部署完成 ==="
echo "http://39.96.203.251:8001"