for some reason im just having a moment trying to understand docker.
I understand the difference between
Dockerfile: Instructions on how to create an image
Image: an immutable "state" of the initial application
Container: a running version of an image
Volume: a shared storage module that can be used by running containers
Questions
- How does a docker compose work?
- How do i setup a devcontainer in vscode?
- How does the file system work in a devcontainer: does it use a docker volume, or does it attach to my exisiting windows file system?
Main Goal
1.) Get a Dockerfile pushed to the github repo, so my friend can use docker compose up to spin up a running version of the application in a container
2.) Setup a devcontainer that is also stored in the github repo, and creates a consistent development environment for both of us. This environment includes:
- Certain extensions in the container (ex. eslint, prettier)
- Certain vscode settings (nothing personal, ex. eslint.fixAll on save)
3.) The ability to debug properly, using vscode breakpoints, watchers, etc, while inside the devcontainer
Notes
- This will be stored in the cloud on github
- I will be collaborating with another individual on this project