-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathbuild.sh
More file actions
executable file
·67 lines (55 loc) · 1.92 KB
/
Copy pathbuild.sh
File metadata and controls
executable file
·67 lines (55 loc) · 1.92 KB
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#!/bin/bash
set -e
echo "🔨 Building PrivateBoard project..."
# Очищаем prod директорию
rm -rf ./prod
mkdir -p ./prod/client
mkdir -p ./prod/server
# Собираем клиент
echo "📦 Building client..."
cd client
bun install
VITE_API_URL= VITE_WS_URL= bun run build
cd ..
# Копируем собранный клиент
cp -r client/dist/* prod/client/
cp client/Dockerfile prod/client/
cp client/nginx.conf prod/client/
cp client/package.json prod/client/
cp client/bun.lock prod/client/
# Копируем tldraw assets для автономной работы
if [ -d "client/public/tldraw-assets" ]; then
echo "📦 Copying tldraw assets..."
cp -r client/public/tldraw-assets prod/client/
fi
# Копируем сервер
echo "📦 Copying server..."
cp server/package.json server/bun.lock server/Dockerfile prod/server/
cp -r server/src prod/server/src/
cp -r server/data prod/server/ 2>/dev/null || true
# Устанавливаем зависимости сервера для Docker
echo "📦 Installing server dependencies..."
cd server
bun install
cd ..
echo ""
echo "✅ Build complete! Output in ./prod/"
echo ""
echo "📋 To build Docker images:"
echo " docker build -t privateboard-server ./prod/server"
echo " docker build -t privateboard-client ./prod/client"
echo ""
echo "🚀 To run:"
echo " docker run -d --name privateboard-server -p 3001:3001 privateboard-server"
echo " docker run -d --name privateboard-client -p 80:80 privateboard-client"
echo ""
echo "💾 To export images:"
echo " docker save privateboard-server | gzip > privateboard-server.tar.gz"
echo " docker save privateboard-client | gzip > privateboard-client.tar.gz"
echo ""
echo "📥 To import images on another machine:"
echo " docker load < privateboard-server.tar.gz"
echo " docker load < privateboard-client.tar.gz"
echo ""
echo " Client: http://localhost:80"
echo " Server: http://localhost:3001"