Skip to content

Instantly share code, notes, and snippets.

@weaponsforge
Last active January 22, 2025 17:34
Show Gist options
  • Save weaponsforge/25598b677fb97eae8cb05c276a346d71 to your computer and use it in GitHub Desktop.
Save weaponsforge/25598b677fb97eae8cb05c276a346d71 to your computer and use it in GitHub Desktop.
Comon Dockerfile for Node Scripts
FROM node:20.15.3-alpine AS base
RUN mkdir -p /opt/app
WORKDIR /opt/app
RUN adduser -S user
RUN chown -R user /opt/app
COPY package*.json ./
FROM base AS development
RUN npm install
COPY . ./
USER user
CMD ["sh"]
@weaponsforge
Copy link
Author

  1. Build Image

    • docker build -t <IMAGE_NAME> .
  2. Run container in detached mode

    • docker run -it --rm -d --name <CONTAINER_NAME> <IMAGE_NAME>
    • eg: docker run -it --rm -d --name my-app-demo weaponsforge/app-demo
  3. Run a script from the running container

    • docker exec -it <CONTAINER_NAME> <NPM_SCRIPT>
    • eg: docker exec -it my-app-demo npm run dev
  4. Stop the container

    • docker stop <CONTAINER_NAME>
    • eg: docker stop my-app-demo

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment