- Mount ./data:/app instead of ./data/app:/app to preserve directory nesting - This allows Python imports like 'from app.config' to work correctly - data/app/ now contains the Python package (app.py, config.py, etc.) - Verified containers start healthy with proper module resolution
27 lines
729 B
Bash
Executable File
27 lines
729 B
Bash
Executable File
#!/bin/bash
|
|
# Initialize ./data folder with all necessary files for deployment
|
|
|
|
set -e
|
|
|
|
echo "🔧 Initializing data folder..."
|
|
mkdir -p data/{app,instance,uploads,caddy-data,caddy-config}
|
|
|
|
echo "📁 Copying app folder..."
|
|
rm -rf data/app
|
|
mkdir -p data/app
|
|
cp -r app/* data/app/
|
|
|
|
echo "📋 Copying Caddyfile..."
|
|
cp Caddyfile data/
|
|
|
|
echo "🔐 Setting permissions..."
|
|
chmod 755 data/{app,instance,uploads,caddy-data,caddy-config}
|
|
chmod 644 data/Caddyfile
|
|
chmod -R 755 data/app/
|
|
find data/app -type f \( -name "*.py" -o -name "*.html" -o -name "*.css" -o -name "*.js" \) -exec chmod 644 {} \;
|
|
chmod 777 data/instance data/uploads
|
|
|
|
echo "✅ Data folder initialized successfully!"
|
|
echo "📊 Data folder contents:"
|
|
du -sh data/*/
|