diff --git a/Dockerfile b/Dockerfile index e3ad42c..0e9bb5b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,12 +1,12 @@ -FROM node:20 +FROM node:24 -WORKDIR /app +WORKDIR /usr/src/leviathan COPY package*.json ./ RUN npm install -VOLUME /app/node_modules +VOLUME /usr/src/leviathan/node_modules COPY . ./ diff --git a/Dockerfile.grunt b/Dockerfile.grunt new file mode 100644 index 0000000..21762d5 --- /dev/null +++ b/Dockerfile.grunt @@ -0,0 +1,13 @@ +# Node.js runtime +FROM node:24 + +WORKDIR /usr/src/leviathan/ + +COPY package.* /usr/src/leviathan/ + +RUN npm install + +VOLUME /usr/src/leviathan/node_modules/ + +# Run the app +CMD [ "npm", "run", "grunt" ] diff --git a/bin/docker-build.bat b/bin/docker-build.bat index 15f4014..1a90979 100644 --- a/bin/docker-build.bat +++ b/bin/docker-build.bat @@ -1 +1,2 @@ docker build -t leviathan . +docker build -t leviathan-grunt -f Dockerfile.grunt . diff --git a/bin/docker-build.sh b/bin/docker-build.sh index ea73e74..68af2b7 100755 --- a/bin/docker-build.sh +++ b/bin/docker-build.sh @@ -1,3 +1,4 @@ #!/bin/sh docker build -t leviathan . +docker build -t leviathan-grunt -f Dockerfile.grunt . diff --git a/bin/docker-run.bat b/bin/docker-run.bat index b0bb057..18d6a5f 100644 --- a/bin/docker-run.bat +++ b/bin/docker-run.bat @@ -1 +1,2 @@ -docker run --rm -d -v "%cd%:/app" -p 3000:3000 --name leviathan leviathan +docker run --rm -d -w "/usr/src/leviathan" -v "$(pwd):/usr/src/leviathan" -p 3000:3000 --name leviathan leviathan +docker run --rm -d -w "/usr/src/leviathan" -v "$(pwd):/usr/src/leviathan" --name leviathan-grunt leviathan-grunt npm run grunt watch diff --git a/bin/docker-run.sh b/bin/docker-run.sh index ee65904..8acfcdc 100755 --- a/bin/docker-run.sh +++ b/bin/docker-run.sh @@ -1,3 +1,4 @@ #!/bin/sh -docker run --rm -d -v "$(pwd):/app" -p 3000:3000 --name leviathan leviathan +docker run --rm -d -w "/usr/src/leviathan" -v "$(pwd):/usr/src/leviathan" -p 3000:3000 --name leviathan leviathan +docker run --rm -d -w "/usr/src/leviathan" -v "$(pwd):/usr/src/leviathan" --name leviathan-grunt leviathan-grunt npm run grunt watch