A Docker container is a lightweight, standalone, executable package of software that includes everything needed to run a piece of software, such as the code, runtime, libraries, and dependencies. Docker allows developers to package applications in containers and run them consistently across different environments (development, testing, production) without worrying about system dependencies.