instruction: Create a Dockerfile for Node.js with production best practices
output: ```dockerfile
  From the host, delete the myfile.txt file.In the container, list the contents of the app directory once more. Observe that the file is now gone.
  
  root@ac1237fad8db:/src# ls
  Dockerfile node_modules package.json spec src yarn.lock
  Stop the interactive container session with Ctrl + D.That's all for a brief introduction to bind mounts. This procedure
  demonstrated how files are shared between the host and the container, and how
  changes are immediately reflected on both sides. Now you can use
  bind mounts to develop software.Development containersUsing bind mounts is common for local development setups. The advantage is that the development machine doesnât need to have all of the build tools and environments installed. With a single docker run command, Docker pulls dependencies and tools.Run your app in a development containerThe following steps describe how to run a development container with a bind
  mount that does the following:Mount your source code into the containerInstall all dependenciesStart nodemon to watch for filesystem changesYou can use the CLI or Docker Desktop to run your container with a bind mount.
  Mac / Linux CLI
  
  PowerShell CLI
  
  Command Prompt CLI
  
  Git Bash CLI
  
  Docker DesktopMake sure you don't have any getting-started containers currently running.Run the following command
  ```