What is the difference between vagrant and docker
Difference: 1. Docker is an open source application container engine and a deployment tool for the running environment; while Vagrant is a deployment tool for the development environment. 2. Docker is suitable for managing application environments, while Vagrant is suitable for managing virtual machines.
The operating environment of this tutorial: linux5.9.8 system, docker-1.13.1 version, Dell G3 computer.
Docker
Introduction to Docker
- Docker - HomePage
- Overview
Docker is an open source application container The engine is based on Go language and complies with the Apache2.0 protocol and is open source.
Docker allows developers to package their applications and dependencies into a lightweight, portable container, and then publish it to any popular Linux machine, which can also be virtualized.
Containers completely use the sandbox mechanism and will not have any interfaces with each other (similar to iPhone apps). More importantly, the container performance overhead is extremely low.
Docker application scenarios
- Automated packaging and publishing of Web applications.
- Automated testing, continuous integration and release.
- Deploy and adjust databases or other back-end applications in service-based environments.
- Compile from scratch or extend an existing OpenShift or Cloud Foundry platform to build your own PaaS environment.
Advantages of Docker
Simplify the process:
Docker allows developers to package their applications and dependencies into one Virtualization can be achieved by publishing to any popular Linux machine in a portable container.
Docker has changed the way of virtualization, allowing developers to directly put their results into Docker for management.
Convenience and speed are already the biggest advantages of Docker. Tasks that used to take days or even weeks can be completed in just a few seconds under the processing of Docker containers.Avoid choice phobia:
If you have choice phobia, be a veteran patient. Docker helps you package your troubles!
The Docker image contains the running environment and configuration, so Docker can simplify the deployment of multiple application instances. For example, web applications, background applications, database applications, big data applications such as Hadoop clusters, message queues, etc. can be packaged into a mirror for deployment.Saving expenses:
The advent of the cloud computing era frees developers from the need to configure expensive hardware in order to pursue effects. Docker has changed the mindset that high performance must be high price.
The combination of Docker and the cloud allows the cloud space to be more fully utilized. It not only solves the problem of hardware management, but also changes the way of virtualization.
Vagrant
Vagrant Introduction
Vagrant is a lightweight, highly reusable and portable Development environment tools.
It can be simply understood that Vagrant abandons all the troublesome settings in the development environment, but replaces it with a single configuration file, and can selectively retain the required features.
Vagrant uses Oracle's open source VirtualBox virtualization system by default and uses Chef to create an automated virtual environment.
Functional features of Vagrant
- Supports quick creation of virtual machines
- Supports quick setting of port forwarding
- Supports customization Image packaging (original image method, incremental patch method)
- Basically all the basic configurations that can be used daily can be quickly set
- Supports automatic running commands at boot
- Yes Write your own extension
Compare Docker and Vagrant
Vagrant is based on Virtualbox’s virtual machine to build your development environment, while Docker is based on LXC (LXC) lightweight container virtualization technology.
Vagrant is the deployment tool for your development environment; and docker is the deployment tool for your running environment.
Vagrant is suitable for managing virtual machines, while docker is suitable for managing application environments.
Recommended learning: "docker video tutorial"
The above is the detailed content of What is the difference between vagrant and docker. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



You can switch to the domestic mirror source. The steps are as follows: 1. Edit the configuration file /etc/docker/daemon.json and add the mirror source address; 2. After saving and exiting, restart the Docker service sudo systemctl restart docker to improve the image download speed and stability.

How to use Docker Desktop? Docker Desktop is a tool for running Docker containers on local machines. The steps to use include: 1. Install Docker Desktop; 2. Start Docker Desktop; 3. Create Docker image (using Dockerfile); 4. Build Docker image (using docker build); 5. Run Docker container (using docker run).

Steps to create a Docker image: Write a Dockerfile that contains the build instructions. Build the image in the terminal, using the docker build command. Tag the image and assign names and tags using the docker tag command.

To get the Docker version, you can perform the following steps: Run the Docker command "docker --version" to view the client and server versions. For Mac or Windows, you can also view version information through the Version tab of the Docker Desktop GUI or the About Docker Desktop menu.

To save the image in Docker, you can use the docker commit command to create a new image, containing the current state of the specified container, syntax: docker commit [Options] Container ID Image name. To save the image to the repository, you can use the docker push command, syntax: docker push image name [: tag]. To import saved images, you can use the docker pull command, syntax: docker pull image name [: tag].

How to run Docker commands? Install Docker and start the daemon. Common Docker commands: docker images: display image docker ps: display container docker run: run container docker stop: stop container docker rm: delete container interact with container using Docker command: docker exec: execute command docker attach: attach console docker logs: display log docker commit: commit change to mirror stop Docker daemon: sudo systemctl stop doc

The steps to update a Docker image are as follows: Pull the latest image tag New image Delete the old image for a specific tag (optional) Restart the container (if needed)

Docker LNMP container call steps: Run the container: docker run -d --name lnmp-container -p 80:80 -p 443:443 lnmp-stack to get the container IP: docker inspect lnmp-container | grep IPAddress access website: http://<Container IP>/index.phpSSH access: docker exec -it lnmp-container bash access MySQL: mysql -u roo
