Merhaba, web uygulamaları için Ubuntu üzerinde XAMPP kullanmayı denemiştim fakat Linux’da çok da sağlıklı çalışmadığını fark ettim, çoğu zaman servisler kendi kendini kapatıyor veya yeniden başlıyordu. Durum böyle olunca ben de alternatif bir yazılım arayışına girdim ve karşıma Docker üzerinde çalışan bir mühendislik harikası çıktı, onun adı Devilbox. :)
Devilbox’ın Özellikleri
Devilbox, Docker’a sahip bütün cihazlarda ve işletim sistemlerinde çalışır. Başlıca özellikleri ise şunlardır:
- HTTPS desteğine sahip.
- Teorik olarak sınırsız sayıda web uygulaması çalıştırabilirsiniz.
- Her proje için özel domain atanabilir. (wordpress.proje, prestashop.proje gibi)
- Bir proje eklediğinizde sistemi yenilemeye gerek yok, kendisi otomatik olarak projenizi canlandırıyor.
- Sadece tek bir ayar dosyasını düzenleyerek servislerin onlarca farklı sürümünü kullanabilirsiniz.
Yukarıda Devilbox’ın çalışmasını gösteren diyagramı görebilirsiniz.
Devilbox Kurulumu
Devilbox kurulumu oldukça basit, aşağıda Linux veya macOS üzerine kurmak için gereken aşamalar mevcut:
git clone https://github.com/cytopia/devilbox
komutunu kullanarak devilbox reposunu indirin.cd devilbox
komutu ile indirdiğiniz klasöre girin.cp env-example .env
ortam değişkenlerinin bulunduğu dosyayı isimlendirelim, eğer isterseknano .env
komutunu kullanarak parametreleri inceleyip değiştirebilirsiniz.docker-compose up
komutu ile yazılımı çalıştırın ve paketleri indirmesini bekleyin, paketler indikten sonra sistemin çalıştığına dair log mesajlarını terminalinizde görebilirsiniz.
Devilbox Kullanımı
Devilbox’ımız çalıştığına göre localhost/
adresine bağlanarak arayüzüne erişebiliriz. Bizi şöyle bir arayüz karşılıyor.
Sisteme projemizi eklememiz için devilbox/data/www
dizini içerisine proje klasörümüzü oluşturuyoruz. Sonrasında ise proje klasörümüzün içinde htdocs adlı yeni bir klasör oluşturup dosyalarımızı bu htdocs’un içine atıyoruz.
Örnek olarak işin sonunda index.php dosyamız şöyle bir dizinin içinde olması gerekiyor.
devilbox/data/www/projeAdi/htdocs/index.php
Bütün bunları yaptıktan sonra Devilbox içerisinden ‘Virtual Hosts’ sekmesine tıkladığımızda aşağıdaki gibi bir hatayla karşılacağız, bunun çözümü ise çok basit.
Tek yapmanız gereken sudo nano /etc/hosts
komutunu kullanarak hosts dosyanıza;
- 127.0.0.1 projeAdi.loc
kaydını eklemek. Bu pencereden sırasıyla CTRL+X ve Shift+Y tuşlarına basarak çıkın.
Hata çözüldü, artık linke tıklayarak veya domain ismini adres çubuğuna yazarak web uygulamanıza erişebilirsiniz.
Ekstra Bilgiler
- Devilbox klasörü içerisinde
sudo ./shell.sh
komutunu kullanarak konteyner terminaline erişebilirsiniz. Böylece ‘mysql’ gibi komutları kullanabilirsiniz. - Devilbox klasörü içerisinde bulunan
.env
dosyasını düzenleyerek istediğiniz servisin istediğiniz versiyonunu kullanabilirsiniz, ayrıca domain uzantısını değiştirmek gibi birçok ayara sahip.
Son Sözler
Özellikle macOS ve Linux’da can sıkıcı olan XAMPP’a çok güzel bir alternatiften bahsettik. Ayrıca Devilbox gibi basit ama etkili yazılımlar Docker dünyasına dalış yapmak için güzel bir yol. Kendinize iyi bakın!
yibudak