41 lines
1.2 KiB
Bash
41 lines
1.2 KiB
Bash
#!/bin/sh
|
|
set -e
|
|
|
|
# Update apk repository and install git
|
|
apk update && apk add --no-cache git
|
|
|
|
PROJECT_DIR="/app/my-medusa-app"
|
|
|
|
# Check if the Medusa project has already been created.
|
|
if [ ! -d "$PROJECT_DIR" ]; then
|
|
echo "Medusa project not found. Running installation..."
|
|
|
|
# Run the Medusa CLI generator silently with the desired options:
|
|
# --db-url: Uses the provided DATABASE_URL to connect and run migrations.
|
|
# --no-browser: Skip opening the admin dashboard.
|
|
# --directory-path: Specify where to install the project.
|
|
# --with-nextjs-starter: Option to install the Next.js storefront.
|
|
npx create-medusa-app@latest my-medusa-app \
|
|
--db-url "$DATABASE_URL" \
|
|
--no-browser \
|
|
--directory-path "/app/" \
|
|
--with-nextjs-starter
|
|
|
|
# Change into the project folder, install dependencies and build the app.
|
|
cd "$PROJECT_DIR"
|
|
npm install
|
|
npm run build
|
|
else
|
|
echo "Medusa project already exists. Skipping installation."
|
|
fi
|
|
|
|
# Change directory to the Medusa project folder.
|
|
cd "$PROJECT_DIR"
|
|
|
|
# List the contents of the project directory to verify installation.
|
|
ls -la
|
|
|
|
# Finally, start the Medusa server in development/production mode.
|
|
echo "Starting Medusa server..."
|
|
exec npm start
|