Yıllardır development ortamı ile production ortamının farklı olmasından kaynaklı ne sorunlarla karşılaştık.Özellikle PHP açısından konuşursak “Benim bilgisayarda çalışıyor, sunucuya atınca çalışmıyor” bu cümlesini kurmayan geliştirici tanımadım henüz.
Vagrant işte tam bu soruna çözüm getiren, geliştirme ortamımız ile yayın ortamımızın aynı bileşenlere sahip olmasını ve dolayısıyla, geliştirme ortamı kaynaklı sorunlarımızı gideren bir araç.
Vagrant‘ı kullanmak için çok fazla komut bilmenize gerek yok, zaten kendi sitesinde de gösterildiği gibi
$ vagrant box add base http://files.vagrantup.com/precise32.box $ vagrant init $ vagrant up
box’ı ekleyip initialize ettikten sonra “up” dememiz yeterli.
WordPress Geliştirme Ortamımızı Hazırlayalım
1) İlk ihtiyacımız olan virtual box. Bilgisayarınıza virtualbox‘un uygun versiyonunu kurunuz.
2) Vagrant‘ı indirip kurunuz.
3) Vagrant hostsupdater eklentisini kurun.
vagrant plugin install vagrant-hostsupdater
komutuyla kurabilirsiniz.Bilgisayarınızın hosts dosyasını konfigure etmeye yarar. İsterseniz kurmayıp elle kendiniz ayarlayabilirsiniz.
Elle yapılandırmak için hosts dosyasına
192.168.50.4 vvv.dev local.wordpress.dev local.wordpress-trunk.dev src.wordpress-develop.dev build.wordpress-develop.dev
şeklinde ip adresini tanıtıyoruz.
4) Gelelim WordPress tarafına. 10up (WordPress.com’un tavsiye ettiği Vip partnerlerden birisidir aynı zamanda) firmasının açık kaynak olarak geliştirmeye devam ettiği “varying-vagrant-vagrants” ı kullanacağız.
Varying Vagran Vagrants
Öncelikle son versiyonu github üzerinden indirelim.
İstediğimiz dizine indirdiğimiz dosyayı çıkartalım (yerel sunucuda xampp kullandığım için xampp ‘ın htdocs’unu kullandım ben). Zipten çıkardığımız dizini ‘vagrant-local’ olarak adlandırıyoruz.(her hangi bir isim verebilirsiniz)
5) Geldik işin en eğlenceli kısmına, vagrant-local dizininde ‘vagrant up’ komutunu çalıştırıyoruz ve sırtımızı koltuğumuza yaslanıp bekliyoruz. (kurulum işlemleri internet hızınıza da bağlı olarak, biraz zaman alabilir)
Kurulum bittikten sonra şu teknolojilere;
- Ubuntu 12.04 LTS (Precise Pangolin)
- WordPress Develop
- WordPress Stable
- WordPress Trunk
- WP-CLI
- nginx 1.4.x
- mysql 5.5.x
- php-fpm 5.4.x
- memcached 1.4.13
- PHP memcache extension 3.0.8
- PHP xdebug extension 2.2.3
- PHP imagick extension 3.1.0RC2
- xdebug 2.2.3
- PHPUnit 3.7.24
- ack-grep 2.04
- git 1.8.5
- subversion 1.7.9
- ngrep
- dos2unix
- Composer
- phpMemcachedAdmin 1.2.2 BETA
- phpMyAdmin 4.0.10 (multi-language)
- Webgrind
- NodeJs Current Stable Version
- grunt-cli Current Stable Version
ve
http://local.wordpress.dev
http://local.wordpress-trunk.dev
http://src.wordpress-develop.dev
http://build.wordpress-develop.dev
sitelerine sahip olacaksınız. Sitelerin adlarından ne işe yaradığını anlarsınız zaten.
Özellikle Windows’ta konsoldan bi’şey kurmak gerçekten acı verici olduğundan vagrant işimizi süper derecede kolaylaştırıyor.
İpucu: sanal makineye ssh üzerinden bağlandığınızda Türkçe klavye’ye ayarlı olmadığını görebilirsiniz. Bu gibi durumda ‘sudo apt-get install console-data’ diyerek, Türkçe Q klavyeyi seçebilirsiniz.
Teknik dökümantasyon ve daha detaylı bilgi için github sayfasına göz atmanızı tavsiye ederim.
Gökberk Yağcı der ki
Kurulum ve anlatım sade ve güzel olmuş elineze sağlık fakat aynı makalede iki farklı box yerine tek bir boxu ( precise32 || ubuntu/trusty64temel ) temel alarak kullanırsanız daha faydalı olur.