# Node.js ベース(n8n 対応環境)+ PHP 環境 FROM node:18.17.0 # Spaces対応ポート公開(7860のみ) EXPOSE 7860 # 環境変数(n8n用:未使用ならそのままでOK) ENV N8N_PORT=7860 ENV WEBHOOK_URL=https://kenken999-nodex-n8n-domain.hf.space/ ENV VUE_APP_URL_BASE_API=https://kenken999-nodex-n8n-domain.hf.space/ # --- n8n をグローバルインストール(未使用でもOK) --- RUN npm install -g n8n # --- PHP + Laravel 環境構築 --- RUN apt-get update && apt-get install -y \ php \ php-cli \ php-mbstring \ php-xml \ php-sqlite3 \ php-mysql \ php-curl \ php-zip \ php-bcmath \ unzip \ git \ wget \ curl \ sqlite3 \ libsqlite3-dev # Composerインストール RUN curl -sS https://getcomposer.org/installer | php && \ mv composer.phar /usr/local/bin/composer # Laravel用の作業ディレクトリ WORKDIR /app COPY . /app # .env 設定(SQLite使用) RUN cp .env.example .env # Composer install & Laravel初期化 RUN composer install --no-interaction --prefer-dist --optimize-autoloader \ && php artisan key:generate \ && mkdir -p database && touch database/database.sqlite \ && chmod -R 777 database storage bootstrap/cache \ && php artisan migrate --force || true # Git設定(n8nベース環境なのでグローバルでOK) RUN git config --global user.email "kenken999@users.noreply.huggingface.co" # /app ディレクトリ全体に書き込み権限を付与 RUN chmod -R 777 /app # entrypoint.sh をコピーして実行権限を付与 COPY entrypoint.sh /entrypoint.sh RUN chmod +x /entrypoint.sh # Laravel 起動(Spaces対応ポート7860で起動) CMD ["/entrypoint.sh"] # n8n を代わりに起動したい場合は以下に切り替え可能: # CMD ["n8n", "start"]