#!/bin/sh set -ex # Update apt repository, install git, and verify installation. apt-get update -y && apt-get install -y git && rm -rf /var/lib/apt/lists/* echo "Git version:" $(git --version) 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: Optionally install the Next.js storefront. npx create-medusa-app@latest my-medusa-app \ --db-url "$DATABASE_URL" \ --no-browser \ --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 (development/production mode as desired). echo "Starting Medusa server..." exec npm start