最近在搭测试环境,一开始就在vagant和docker之间来回折腾。两者其实都非常适合用来搭开发环境;但最终让我决定用Docker的原因是因为Vagant在hyper-v下出现了一些奇怪的问题,所以Docker就顺理成章的成了最后的选择。
总结了下Docker相比vagant的优势:
1. docker的镜像比较成熟而且丰富,基本上只需要引入就完事了,用vagrant的话,可能还要自己搭,实现不想再折腾各种安装包了;
2. docker的配置打包好后,可以很方便的打包给同事用,用vagant的话,同事可能还要重新学习一遍:
3. 资料和文档上docker比vagant好找;
4. 对docker比较熟;)
5. 对hyper-v的兼容性比较好。
docker-compose.yml
version: "3.1"services:
web:
image: php:5.6.40-apache
ports:- "80:80"
- "443:443"volumes:- ./app:/var/www/html
networks:- defaultdb:
image: mysql:5.7ports:- "3306:3306"command:--default-authentication-plugin=mysql_native_password
environment:
MYSQL_DATABASE: example
MYSQL_USER: admin
MYSQL_PASSWORD:123456MYSQL_ROOT_PASSWORD:123456volum