[Docker](https://www.docker.com/) runs [[container]]s. ## installation You must have [[Windows Subsystem for Linux|WSL]] enabled to run Docker on Windows. The best way to get started with Docker is to download [Docker Desktop](https://www.docker.com/products/docker-desktop/). Run the installer. You may need to restart Windows. If you don't have a Docker account, create one to log in when the application first launches. **Make sure you verify your email with the verification email before proceeding!** Add the Docker Extension in [[VS Code]]. If you are still running into errors with authentication, run `docker login` to authenticate from your shell. ## quick start Start by using Docker to launch your app locally. First, ask your favorite GPT to create a Dockerfile for the tech stack you are using and save it with filename `Dockerfile` (no file extension) in your project root directory. For a [[Flask]] app, it might look like ```Dockerfile # Use official Python image FROM python:3.13-slim # Set work directory WORKDIR /app # Install dependencies COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt # Copy the app code COPY . . # Expose the port Dash runs on EXPOSE 8080 # Start Dash app CMD ["python", "app.py"] ``` Make sure the port and command `CMD` are consistent between your app code and the Dockerfile. For example with this Flask app, the app should run with ```python app.run(host="0.0.0.0", port=8080) ``` Next, make sure you have a [[requirements.txt]] file (as required by your Dockerfile to install dependencies). Finally, build the Docker image and serve it with Git Bash. ```bash docker build -t my-app . docker run -p 8080:8080 my-app ``` Where `my-app` is the tag (or name) you'd like to give your container. Your app is now running on `localhost:8080`. Super simple!