From e17014bce4d56c60f44c9e2f7d56a2de94fcae74 Mon Sep 17 00:00:00 2001 From: webdevcody Date: Sat, 3 Jan 2026 14:28:53 -0500 Subject: [PATCH] update the script to support running in docker --- .claude/.gitignore | 1 + .dockerignore | 1 + init.mjs | 19 +++++++++++++++++-- 3 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 .claude/.gitignore create mode 100644 .dockerignore diff --git a/.claude/.gitignore b/.claude/.gitignore new file mode 100644 index 00000000..735e81ff --- /dev/null +++ b/.claude/.gitignore @@ -0,0 +1 @@ +hans/ \ No newline at end of file diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 00000000..40b878db --- /dev/null +++ b/.dockerignore @@ -0,0 +1 @@ +node_modules/ \ No newline at end of file diff --git a/init.mjs b/init.mjs index 49d47fa6..37beae21 100644 --- a/init.mjs +++ b/init.mjs @@ -516,6 +516,7 @@ async function main() { console.log('═══════════════════════════════════════════════════════'); console.log(' 1) Web Application (Browser)'); console.log(' 2) Desktop Application (Electron)'); + console.log(' 3) Docker Container'); console.log('═══════════════════════════════════════════════════════'); console.log(''); @@ -533,7 +534,7 @@ async function main() { // Prompt for choice while (true) { - const choice = await prompt('Enter your choice (1 or 2): '); + const choice = await prompt('Enter your choice (1, 2, or 3): '); if (choice === '1') { console.log(''); @@ -634,9 +635,23 @@ async function main() { electronProcess.on('close', resolve); }); + break; + } else if (choice === '3') { + console.log(''); + log('Launching Docker Container...', 'blue'); + console.log(''); + + // Run docker compose up --build via npm run dev:docker + const dockerProcess = runNpm(['run', 'dev:docker'], { + stdio: 'inherit', + }); + await new Promise((resolve) => { + dockerProcess.on('close', resolve); + }); + break; } else { - log('Invalid choice. Please enter 1 or 2.', 'red'); + log('Invalid choice. Please enter 1, 2, or 3.', 'red'); } } }