Dockerfile 627 B

123456789101112131415161718192021222324252627282930313233
  1. # syntax=docker/dockerfile:1.4
  2. FROM node:lts-buster-slim AS development
  3. # Create app directory
  4. WORKDIR /usr/src/app
  5. COPY package.json /usr/src/app/package.json
  6. COPY package-lock.json /usr/src/app/package-lock.json
  7. COPY .npmrc .
  8. COPY .yarnrc.yml .
  9. RUN npm ci
  10. COPY . /usr/src/app
  11. EXPOSE 3000
  12. CMD [ "npm", "run", "dev" ]
  13. FROM development as dev-envs
  14. RUN <<EOF
  15. apt-get update
  16. apt-get install -y --no-install-recommends git
  17. EOF
  18. RUN <<EOF
  19. useradd -s /bin/bash -m vscode
  20. groupadd docker
  21. usermod -aG docker vscode
  22. EOF
  23. # install Docker tools (cli, buildx, compose)
  24. COPY --from=gloursdocker/docker / /
  25. CMD [ "npm", "run", "dev" ]