Docker, a Linux container that is becoming increasingly popular with developers for deploying apps to a cloud infrastructure. Docker allows application data to sync with the OS running on the cloud infrastructure. That means a developer can work directly from their desktop environment and use Docker to automatically sync updates.
Suppose a traditional software developer which follows the below steps as the development process.
Docker tries to tackle this. Comparing with a source code repository system (SVN/Git) which manages the source code, Docker manage the complete software deployment (i.e. source code, configuration) as a "Container". This ensures every developer test their code in a developer environment exact similar to the production environment.
When it comes to maintaing the configuration of components with in the Container, it follows a JSON representation as follows.
Suppose a traditional software developer which follows the below steps as the development process.
- Checkout a remote SVN/Git repository to the local file system
- Improve the code in the local repository
- Test the code in local repository
- Push the modifications back to the remote repository, so others can update those modifications
Docker tries to tackle this. Comparing with a source code repository system (SVN/Git) which manages the source code, Docker manage the complete software deployment (i.e. source code, configuration) as a "Container". This ensures every developer test their code in a developer environment exact similar to the production environment.
When it comes to maintaing the configuration of components with in the Container, it follows a JSON representation as follows.