instruction: Create a Dockerfile for Node.js with production best practices
output: ```dockerfile
  from which live weather data is fetched.WireMock: The mock server that simulates the API responses during testing. It runs as a Docker container.
  In development, the Node.js backend sends a request to WireMock instead of the actual AccuWeather API.In production, it connects directly to the live AccuWeather API for real data.Use mock data in local developmentLetâs set up a Node app to send requests to the WireMock container instead of the actual AccuWeather API.PrerequisiteInstall Node.js and npmEnsure that WireMock container is up and running (see Launching WiremockFollow the steps to setup a non-containerized Node application:Navigate to the accuweather-api directoryMake sure you're in the directory where your package.json file is located.Set the environment variable.Open .env file placed under accuweather-api/ directory. Remove the old entries and ensure that it just contains the following single line.
  
  API_ENDPOINT_BASE=http://localhost:8080This will tell your Node.js application to use the WireMock server for API calls.Examine the Application Entry PointThe main file for the application is index.js, located in the accuweather-api/src/api directory.This file starts the getWeather.js module, which is essential for your Node.js application. It uses the dotenv package to load environment variables
  ```