Download presentation
Presentation is loading. Please wait.
Published byLeo Wells Modified over 6 years ago
1
Drupal VM and Docker4Drupal For Drupal Development Platform
by Dinesh Waghmare TCS
2
Are you developer and do development locally?
3
Development Stack or Pre-packaged Environments
Traditional packaged Development Stack over Linux / Windows / Mac Apache MySQL PHP Java / tomcat Ruby/Rails Tools: XAMPP MAMP WAMP Add On software: Apache solr PhpMyAdmin Node JS
4
Difficulties: in Pre-packaged Environments
Real time environments in Dev / Stage / Prod are different Different Versions Different modules and plugins Example: PHP YAML Extensions or Spicy Library Single Stack for Multiple projects while each project or initiatives have different purpose and goals It works on my system not on production Hard to understand server configurations for developers Cloning Project or Building Project from Scratch on Local vs Dev/Stage/Prod
5
Where to adopt over Pre-packaged Environments
Virtual Machines (VM) ? What is VM: A virtual machine is a software computer that, like a physical computer, runs an operating system and applications The virtual machine is comprised of a set of specification and configuration files and is backed by the physical resources of a host Every virtual machine has virtual devices that provide the same functionality as physical hardware and have additional benefits in terms of portability, manageability, and security VM based Developments It matches with Prod configuration of server or application stack Configure stack as Code configuration You can Spun, destroy / suspend / Rebuild
6
What to know in VM? Vagrant:
Vagrant provides the same, easy workflow regardless of your role as a developer, operator, or designer It is declarative configuration file which describes all your software requirements, packages, operating system configuration, users, and more Aims to mirror production environments by providing the same operating system, packages, users, and configurations You can still have flexibility to use their favourite editor, IDE, and browser Integrates with your existing configuration management tooling like Chef, Puppet, Ansible, or Salt works on Mac, Linux, Windows Remote development environments force users to give up their favourite editors and programs
7
What to know in VM? Ansible:
It is powerful automation engine that makes system and app simple to deploy No complex scripting
8
What solution we have for Drupal?
Drupal VM: local Drupal development, built with Vagrant and Ansible Support Mac OS, Linux, and Windows Support multiple utilities like : Apache solr , PHP, Node JS etc. Utilities can be enabled or disabled Link: Documentation: Overriding is easy to suite developers requirements default.config.yml : default configurations Config.yml : to override Vagrant.config.yml : Environment specific overrides. When you run Drupal VM through Vagrant, the environment will be set to vagrant and this file is loaded when available example: prod.config.yml Local.config.yml : Local development overrides
9
Drupal VM: How it works? Drupal VM: Start: vagrant status
Run: vagrant up Provision: vagrant provision Save: vagrant suspend Start again: vagrant resume Stop: vagrant halt Destroy: vagrant destroy Manage: vagrant global-status Help: vagrant help
10
Drupal VM Demo magic of vagrant up and provision
DrupalVM demo for Drupal 8 with composer DrupalVM demo for Drupal 7 with make file DrupalVM demo for Custom make file and Drupal project
11
Docker? Docker is the only container platform to build, secure and manage the widest array of applications from development to production both on premises and in the cloud Supports Linux / Windows / Mac Provides agility to move platform configuration Enables portability of infrastructure Deliver application stack securely and consistent in nature Optimise use of infrastructure resources
12
Drupal4Docker Docker4Drupal is a set of Docker images optimized for Drupal. Use docker- compose.yml Docker4Drupal is designed to be used for local development Link: Documentation: Allow to run Vanial Drupal 7 / Drupal 8 Allow to mount your own codebase Run containers: docker-compose up –d Stop containers: docker-compose stop
13
docker4Drupal Demo Run containers: docker-compose up –d
Stop containers: docker-compose stop
14
Thank You Drupal Camp Bengaluru 2017 Drupal.org TCS
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.