Sanal Web Geliştirme Ortamı ve Sunucusu Nasıl Oluşturulur

  • Owen Little
  • 0
  • 4987
  • 1319
reklâm

Windows ve Mac OSX, son birkaç yıldır geliştirici dostu işletim sistemleri olarak ilerleme kaydetti, ancak her web geliştiricisinin gerçekten webin yerel ortamında, Linux'ta çalışması gerekiyor.

Bu makale, her iki dünyanın da en iyisini nasıl elde edeceğinizi gösterecek: günlük ihtiyaçlarınız için Windows veya OSX gibi istikrarlı ve tüketici dostu bir işletim sistemine bağlı kalırken, üretim kodunuzla aynı ekosistemde geliştirmenin avantajlarından yararlanın.

Giriş

Webin çoğu, geliştiricilerin aradığı şey üzerinde çalışıyor. “LAMBA yığını.” Bu kısaltma Linux, Apache, MySQL, PHP'nin bir arada toplandığı ve genellikle bir web sunucusu olarak anladığınız gibi çalıştığı anlamına gelir. (Yakından ilgili bir yığın - veya teknoloji kümesi - “LEMP,” ile “E” Apache, Nginx'e bir alternatifin telaffuzundan türetildiği söyleniyor “motor x.”)

Linux'un açıkça burada bulunduğunu fark edebilirsiniz, ancak bu nedenle Linux'un geliştiriciler tarafından önerilmesinin nedeni bu değildir. Diğer teknolojiler - Apache (veya Nginx), MySQL ve PHP - hepsi farklı platformlar için farklı araçlara ve uygulamalara sahiptir, ancak tarihsel ve teknik nedenlerden dolayı Linux tabanlı yapılandırmalar sunucu alanına hakimdir ve daha öngörülebilir olma eğilimindedir..

Öngörülebilirlik ve güvenilirlik, yalnızca bu amaç için kullandığınız bir işletim sisteminde geliştirmek istediğiniz büyük nedenlerdir - günlük olarak web geliştiricisi olarak üstlendiğiniz sayısız görevi yerine getiren özel bir işletim sistemi. Başka bir deyişle, yeni grafik sürücüleriniz yüklendiğinde yeniden başlatmanız gereken işletim sistemini aynı işletim sisteminde çalıştırmak istemiyorsanız, ya da paketlemek için bir sırt çantasına koymanız gereken bir makineyi olan yol. Karma kullanımlı makinenizde bir sunucuyu çalıştırmak için gereken süreçleri ve yazılımı dahil etmek bir kelimeyle karışık.

Peki çoklu görev yapma yeteneğinizi, uygulamalarınızın yerel bağlamında geliştirme gereksiniminizle nasıl dengeliyorsunuz??

Sanal makineler girin Sanal Makine Nedir? Bilmeniz Gereken Her Şey Sanal Makine Nedir? Bilmeniz Gereken Her Şey Sanal makineler, mevcut bilgisayarınızda başka işletim sistemlerini çalıştırmanıza izin verir. İşte onlar hakkında bilmeniz gerekenler. .

Sanal Makineler ve Serseri

Sanal makineler, birincil işletim sisteminizde çalışan programlardır. Tamamen içerilen ve fiziki makinenizde olan bitenden ayrı olarak, bir pencerenin içinde tamamen ayrı bir işletim sistemi çalıştırmanıza izin verir, ancak bir miktar ek ücret karşılığında.

Ancak, avantajları çoktur:

  • Yazılım yükleme, yapılandırma veya kaldırma işleminde hata mı yapıyorsunuz? Önemli değil, yeni bir görüntüyle tekrar başlayabilirsiniz.
  • Denemeniz feci bir şekilde başarısız oldu ve çevresindeki işletim sistemini dondurdu mu? Yine, sorun değil çünkü yalnızca sanal makine etkileniyor.
  • Biraz farklı koşullarda yinelemek gerekiyor mu? Farklı yazılım sürümleri veya farklı yazılımlar (örneğin, Apache ve Nginx kullanarak) gibi her koşul seti ayrı bir yazılım makinesi veya sanal olabilir “Kutu.”

Vagrant adlı bir araç konuşlandırmanıza yardımcı olacak “taban kutuları” Çeşitli tatlarda önceden yapılandırılmış Linux işletim sistemleri içeren.

Bu makalede, sanal bir makineyi GUI'siz ve yalnızca komut satırı arabirimiyle (CLI) kullanma konusunda bazı rahatlarınız olduğu varsayılmaktadır..

Bir temel kutu yapılandırmadan önce sanal bir makine sağlayıcısı ve Vagrant alalım.

  1. İşletim sisteminiz için sanal bir makine sağlayıcınız olduğundan emin olun. Hem Windows hem de Mac OSX, Virtual Box'ı kullanabilir. VMware ayrıca her iki platformda da çalışır. (Windows 10 Pro ve üstü Hyper V kullanabilir, Windows 10 Pro Yükseltme mi 99 Dolar mı? Windows 10 Pro Yükseltme mi 99 Dolar mı? Windows 10 Pro daha fazla özellik sunar, ancak aynı zamanda Giriş sürümünden yükseltme yapmak için 99 $ fiyat etiketi taşır. Profesyonel özelliklerin yükseltmeye değer olup olmadığına karar vermek için bilmeniz gerekenler., bu bir donanımdır çünkü donanım daha iyi kullanılır.)
  2. Vagrantup.com'u ziyaret edin ve uygun bir yükleyici seçin.
  3. Yerel dizin ağacı yapınızda, kutuyu yerleştirmek için yeni bir klasör oluşturun. (Kullanıcı profilinize bağlı olan yerler iyi çalışır, sistem dizinleri içindeki yerler genellikle çalışmaz.)

Web Geliştirme Ortamı Yapılandırması

İşte otomatikliğin büyüsünün gerçekleştiği yer: PuPHPet adlı bir araç, yoğunlaştırır ve GUI, LAMP'ta yaygın olarak kullanılan yazılımı seçme ve yapılandırma işlemini yoğunlaştırır ve hatta Ruby ve Node.js gibi sunucu tarafı dilleri destekleyerek bunun ötesine geçer. Düğüm.JS ve Neden Umurumda Olmalıyım? [Web Geliştirme] Düğüm.JS Nedir ve Neden Umursamalıyım? [Web Geliştirme] JavaScript, tarayıcıda çalışan, yalnızca istemci tarafında çalışan bir programlama dilidir, değil mi? Artık değil. Node.js, sunucuda JavaScript çalıştırmanın bir yoludur; ama bu çok daha fazlası. Eğer… (teknik olarak JavaScript sadece sunucu tarafında değil, bu çeşitliliktedir) ve LAMP yığınının diğer bileşenlerine alternatifler.

PuPHPet Vagrant için temel konfigürasyon dosyaları oluşturur. Sihirbaz yapılandırmak için yirmiden fazla farklı boyut içeriyor, bu yüzden sadece en göze çarpanların üzerinden geçeceğim.

  • Dağıtım Hedefi - Burada, VirtualBox, VMWare ve benzerleri için uygun bir resim veya AWS veya Digital Ocean gibi bulut bilişim altyapısı için uygun bir resim oluşturmak isteyip istemediğinizi seçebilirsiniz..
  • Sistem> Paketler - Buraya normal bir kurulumda yaptığınız gibi herhangi bir yazılımı ekleyebilirsiniz. Özellikle, işletim sistemi dağıtımının temelinde bulunan geliştirme için hangi paketleri kullanmalısınız?.
    • Ubuntu’nun geliştirme bağımlılıklarını dahil etmek için -Temel inşa
    • CentOS 7 için aynısını dahil etmek üzere "Geliştirme araçları"
  • Web sunucuları - L (A | E) MP yığınınızın omurgasını oluşturmak için Apache veya Nginx'i seçin.
  • duujjil - PHP, Ruby, Node.js, Python.
  • Veritabanları - Belki de bu yaklaşımın en çekici özelliklerinden biri, mevcut farklı veritabanı çeşitleriyle oynamak için sanal makineler üretme yeteneğidir. MySQL bir varsayılan olsa da, MariaDB Açık Kaynak Kodlu Yazılım ve Forking: The Good, The Great ve Çirkin Açık Kaynak Kodlu Yazılım: Forking: The Good, The Great ve Çirkin Bazen son kullanıcı gibi bir şeyle oynamak isteyebilirsiniz çatallardan büyük ölçüde faydalanır. Bazen çatal, bir öfke, nefret ve düşmanlık örtüsünün altında yapılır. Bazı örneklere bakalım. .
  • Seçeneklerin geri kalanı biraz egzotik ve ne olduğunu bilmiyorsanız, daha sonra her zaman kurulabilirler. Sonuçta sahip olduğunuz, emrinizde tam teşekküllü bir işletim sistemi..

PuPHPet, bu yapılandırma yolculuğunun sonunda bir arşiv üretecektir. Bunu, yeni sunucunuzun parametrelerini yapılandırmadan önce oluşturduğunuz dizine açın..

Şimdi, aşağıdakileri yürütün:

$ serseri

Ve sonuçları gözlemleyin:

Temel dizini yerel dizininizde olmadığından, serseri görüntüyü önceden yapılandırılmış serseri kutularının deposu olan Atlas'tan alır..

(Teknik olarak, bunlardan herhangi biri şu komutu vererek yerel makinenize eklenebilir: $ vagrant kutusu USER / BOX ekle)

Kaydırma

Bu noktada, VM'niz önyüklenir ve temelde çevrimiçi olursunuz. Tek bir şey kaldı: komutu ver $ serseri ssh LAMP sunucusu olarak görev yapan (başsız) VM'niz ile kendinizi uygun bir SSH oturumuna bırakmak için. tebrikler!

Daha fazla bilgi edin

Buradan Vagrant hakkında söylenecek ve yapılacak daha çok şey var ve bildiğiniz gibi kendi gelişim alanınızla başarmak için sınırsız miktarda. Kaldığım yeri bulmak için resmi Başlangıç ​​Kılavuzuna göz atın..

Hiç kendi geliştirme ortamınız için bir VM kullandınız mı? Bu kurulumu kullandınız mı veya farklı bir yaklaşım kullandınız mı? Fikirlerinizi aşağıdaki yorumlar bölümünde paylaşın!




Henüz no comments

Modern teknoloji hakkında basit ve uygun fiyatlı.
Modern teknoloji dünyasında rehberiniz. Her gün bizi çevreleyen teknolojileri ve araçları nasıl kullanacağınızı ve Internet'te ilginç şeyleri nasıl keşfedeceğinizi öğrenin.