1/16
Flashcards covering key concepts and vocabulary related to Docker, development environments, and software development as discussed in the lecture.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai |
|---|
No analytics yet
Send a link to your students to track their progress
Docker
A platform for developing, shipping, and running applications in containers.
Container
A lightweight, standalone, executable package that includes everything needed to run a piece of software.
Virtual Machine (VM)
An emulation of a computer system that provides the functionality of a physical computer.
Dockerfile
A script containing a series of instructions on how to assemble a Docker image.
Image
A lightweight, standalone, and executable software package that includes the application code along with its dependencies.
Command for running Docker image
docker run -it [image_name] - command used to create a container from a Docker image and execute it.
Command for pulling an image
docker pull [image_name] - command used to download a Docker image from a registry.
Local Development Environment
A setup on a developer's machine where applications are developed and tested before deployment.
Advantages of Virtual Machines
Total isolation, replication of production environment, widely used.
Disadvantages of Local Development
Installation issues, library version conflicts, case sensitivity, permissions.
docker-compose.yml
A YAML file used to define and run multi-container Docker applications.
Port Exposing in Docker
Enabling access to specific ports for applications running inside Docker containers.
Cloud Vendors
Service providers that offer scalable cloud computing services to run applications.
WebAssembly (WASM)
A binary instruction format for a stack-based virtual machine, allowing code to run on the web.
NPM (Node Package Manager)
A package manager for the JavaScript programming language used for managing project dependencies.
Framework
A platform or structure used to build and develop software applications.
Hypervisor
A software layer that enables virtualization, allowing multiple virtual machines to run on a single physical machine.