Craft Nitro & amp;Yerel Geliştirme için Devkinsta WordPress
Delicious Brains’te eğitimci geliştiricisi olarak işimle ilgili harika şeylerden biri, bazen daha önce hiç bulamayacağım yeni şeyler deneyebilmem. Son birkaç ay içinde iki yeni yerel geliştirme ortamını test ettim: Craft Nitro ve Devkinsta. Nitro Craft Nitro, Docker tarafından Craft CMS’nin arkasındaki insanlardan desteklenen yerel bir geliştirme ortamıdır. CMS Craft’ı hiç duymadıysanız, bu, şablonlama için dal kullanan Yii PHP çerçevesi üzerine inşa edilmiş açık kaynaklı bir CMS’dir ve gösterge tablosunu destekleyen VUE JavaScript çerçevesidir. Craft CMS (başlangıçta Blok CMS olarak adlandırılır), Expressiongine CMS için en popüler eklenti yapan bir yazılım geliştirme şirketi olan Pixel & Tonic tarafından yapıldı. Bununla birlikte, Ellislabs (ExpressionNGINE’in arkasındaki şirket) tarafından CMS’de yapılan bazı değişiklikler nedeniyle, Pixel & Tonic rakipler kurmaya karar verdi.
Ve sizce WordPress’in bir draması olduğunu düşünüyorsunuz! CMS Craft’ın arkasındaki geliştirici, CMS Craft geliştiricisine açıkça ayarlanan kendi yerel geliştirme ortamlarını oluşturmaya ve serbest bırakmaya karar verdi. Bu resmi olarak 2020’nin başlarında piyasaya sürüldü ve Ubuntu’nun arkasındaki insanlar olan Canonical tarafından yapılan bir uygulama olan Multipass üzerine inşa edildi. Multipass, sanal kutu veya docker içeren bir Vagrant’a benzer bir sanallaştırma platformu sağlar, ancak kullanımı daha kolaydır ve düzenlenir ve daha az kaynak kullanır. Ne yazık ki, o zaman, Multipess’in kullanıcıları hayal kırıklığına uğratan bir dizi hataya sahipti, bu yüzden bir docker kullanmaya geçmeye karar verdiler.
Talihsiz bir durum çünkü bence çoklu şirketler yerel kalkınma ortamında bir sonraki büyük şey olma potansiyeline sahip.Bir platform olarak olgunlaşması sadece biraz zaman alır.Craft CMS ve WordPress benzer teknik gereksinimlere sahip olduğundan, NITRO’nun WordPress için yerel bir bırakma ortamı olarak işlev görüp çalışmadığını görmek ilginç olabileceğini düşünüyoruz.Nitro Craft’ın kurulumu ve yapılandırılması Nitro ile ilgili ilk şey teknik olarak hazırlanmak için oldukça zordur.Her şey kurulum talimatlarında detaylandırılmıştır, ancak önce kendi Docker’ınızı yüklemelisiniz.Hangi işletim sistemini kullandığınıza bağlı olarak, bu zorluk seviyesine göre değişebilir.
Bir Docker yükledikten sonra, işletim sisteminize bağlı olarak birkaç alternatif kurulum seçeneği vardır. MacOS veya Linux kullanıyorsanız, Nitro’yu yüklemek için bir terminal komutunu çalıştırabilirsiniz. Bash <(curl -sls http://installer.getnitro.sh) Yürütülebilecek nitro indirip yükleyen yükleme komut dosyasını indirin ve çalıştırın. [E -posta Korumalı] : ~ $ Bash <(Curl -sls http://installer.getnitro.sh) Paket indirme https://github.com/craftcms/nitro/releases/download/2.0.7/nitro_linux_x86_64 .tar.gz to /home/jonathan/temp_nitro_extract/nitro_linux_x86_64.tar.gz changelog.md lisans.md readme.md nitro indir Complete. ============================================== ===== ======== Senaryo/usr/local/bin yazamayan bir kullanıcı olarak çalıştırıldı. Aşağıdaki komutların kurulumunu tamamlamak için manuel olarak çalıştırılması gerekebilir: ================================== ============================================== ========= =========================== Sudo CP ./Nitro/USR/Local/BIN/Nitro Nitro İnit linux kullandığım için, nitro'nun sudo cp ./nitro/usr/local/bin/nitro çalıştırarak belirli bir dizine yürütülebileceğini de kopyalamam gerekiyor. Bu, her normal sistem kullanıcısının yürütülebilen nitro çalıştırmasına izin verir.
MacOS'ta, Nitro'yu bir homebrawe üzerinden yükleme seçeneğiniz de var. Windows kullanıcılarının WSL 2'yi kullanarak biraz daha karmaşık bir dizi yükleme adımı vardır, bu nedenle yükleme belgesini kontrol etmelisiniz. Ardından, nitro ortamını başlatmak için Nitro Init'i çalıştırırsınız. Bu süreç, belirli çevresel yapılandırma hakkında ne istediğinizi sorar ve her şeyi yönetir. [E -posta korumalı] : ~ $ nitro init nitro ayarlamak … mysql [y/n] kullanmak ister misiniz? Y MySQL 1’in sürümünü seçin. 8.0 2. 5.7 3. 5.6 Seçiminizi girin: 1 PostgreSQL [Y/N] kullanmak ister misiniz? n Redis [Y/N] kullanmak ister misiniz? N Nitro’yu kontrol etmek … … Ağ oluşturma ✓ … Görüntü ✓ … Hacim Oluşturma ✓ … Proxy Oluşturma ✓ Ağı Kontrol Edin … ✓ Ağa Hazır Proxy … ✓ Proxy Hazır Veritabanlarını Kontrol Et .. . … MySQL-8.0-3306.Database 8.0 ✓ Hizmetleri Kontrol Etme … … Dynamodb hizmetini kontrol etmek ✓ … Mailhog hizmetini kontrol etmek ✓ … Redis hizmetini kontrol etmek ✓ Proxy’yi kontrol etmek … … Proxy’yi güncelleme proxy ✓ Ana bilgisayar dosyasının güncellenmesi şifreniz için tanıtılabilir) nitro sertifikalarına artık güvenilir 🔒 Nitro hazır! 🚀
Nitro’yu yükledikten ve başlattıktan sonra bir nitro sitesi ekleyin veya oluşturun, herhangi bir web sitesinin proje dizininde nitro ekle komutunu çalıştırabilirsiniz.Bu, site için hangi ana bilgisayar adını kullanmak istediğinizi ve hangi PHP sürümünü kullanmak istediğinizi soracaktır.Bu ayrıca bir veritabanı oluşturmak ve veritabanı adını sormak isteyip istemediğinizi soracaktır.Gerekli tüm verileri aldıktan sonra, siteyi sizin için devam ettirecek ve yapılandıracaktır.
[E-posta Korumalı] : ~ $ CD/Geliştirme/Siteler/New Sitesi [E-posta Korumalı] : ~ $ nitro ekleme siteleri … [new-site.nitro] ana bilgisayar adını girin: ✓ HOSTNAME to News.nitro ✓ Site ekleme ~/geliştirme/Web Siteleri/Yeni Site Site için Webroot girin [Web]:/✓ Webroot kullanma/PHP sürümünü seçin: 1. 8.0 2. 7.4 3. 7.3 4. 7.2 7.2 5. 7.1 6. 7.0 Seçiminizi girin: 2 ✓ PHP Sürümünü Ayarlama 7.4 Site için bir veritabanı ekleyin [Y/N] y Başlangıç Nitro … … Başlangıç mysql-8.0-3306.database.nitro ✓. .. Nitro-Proxy Başlangıç ✓ Nitro başladı 👍 Yeni veritabanı adını girin: Newsite … veritabanı oluşturma Newsite ✓ Veritabanı eklendi 💪 Yeni site eklendi! 🎉 Şimdi değişiklik uygulayın [Y/N]? Y kontrolü … ✓ Ağa Hazır Proxy … ✓ Proxy Hazır Veritabanlarını Kontrol Etme … … MySQL-8.0-3306.Database.Nitro ✓ Hizmetleri Kontrol Etme … … Dynamodb Hizmetini Kontrol Etme ✓ .. Mailhog hizmetini kontrol etmek ✓ … redis hizmetini kontrol etmek ✓ Siteleri kontrol etmek … yeni-sitro.nitro.nitro.nitro.nitro’yu kontrol etmek ✓ Proxy’yi kontrol etmek … … Proxy’yi güncelleme ✓ Ana bilgisayarlar dosyasını güncelleme (olabilirsiniz Şifreniz için tanıtıldı) Bu bittikten hemen sonra, yerel URL’nize (bu durumda yeni -site.nitro) arama yapabilir ve Nginx sunucusunun görüntülenmesi gereken hiçbir şey olmadığı için beklenen Nginx hata sayfasını görebilirsiniz. Site için.
Proje adı için parametreler sağlamanızı gerektiren Nitro Create’i de kullanabilirsiniz. Bu, yeni bir CMS Craft Proje Dizini oluşturacak ve CMS Craft geliştirme için hazır olan Craft CMS kodunu yükleyecektir. WordPress’in gelişimi için ideal değil, bilmek yararlı. Nitro otomatik olarak Dynamodb ve Redis Services gibi şeyleri içerir. Ancak, bu şeylere ihtiyacınız yoksa, biraz aşırı. Açıkçası, bu Craft CMS’nin geliştirilmesine göre ayarlanmıştır ve Craft CMS geliştiricisinin hizmeti kullandığını varsayıyorum. Yerel geliştirme ortamında e -postaların teslimatını test etmenin iyi bir yolu olan Mailhog ile birlikte toplanmasını seviyorum. WordPress’in geliştirilmesi için Nitro’yu kullanarak Craft Nitro’nun WordPress ile çalışıp çalışamayacağını görmek istiyorum, bu yüzden bir sonraki Step, Nitro ile hazırladığım yerel WordPress.test sitesine çekirdek dosyanın bir kopyasını indirmek ve çıkarmaktır. WP-CHLI’yi iş istasyonumda yükledim, böylece site dizininde WP Core Download’i çalıştırabilirim. WP-CHLI’m yoksa, yalnızca wordpress.org’dan arşivleri indirip çıkarıyorum. Sonra, ünlü 5 dakikalık kurulumu çalıştırmaya karar verdim. Bunu WP-CHLI aracılığıyla yapabileceğimi biliyorum, ancak WordPress’in kurulumuyla bunu olağan bir şekilde yapıp yapamayacağımı görmek istiyorum. Ne yazık ki, işler yanlış oluyor.
Karşılaştığım ilk sorun, kullanıcı adı ve varsayılan veritabanı şifresinin mantıklı olduğunu düşündüğüm hiçbir yerde belgelenmemesiydi. Muhtemelen çoğu CMS zanaat geliştiricisinin sizin için bir proje kimlik bilgisi hazırlayan Nitro Create’i kullanacağıdır. Kazdıktan sonra, ayrıntıları proje kurulum yardım belgesinin altındaki buldum. Ayrıca proje dizinindeki komut satırında Nitro bağlamının çalıştırılmasının veritabanı adları, kullanıcı adları, şifreler ve ana bilgisayar adları ürettiğini öğrendim. Bu arıza ile WordPress kurulumuna tıklıyorum. Veritabanı kimlik bilgisi ekranını girdim, ilgili ayrıntıları girdim, basıldım ve WordPress General’ın “kritik hataları” mesajını sundum. Hata mesajı neyin yanlış olduğunu anlamama gerçekten yardımcı olmadığından, kazmaya başladım. İlk olarak PHP hata günlüğünü kontrol ettim, ancak hiçbir şey bildirilmedi. Bu yüzden xdebug ve phpstorm kullanarak /wp-admin/setup-consig.php dosyasını keşfetmeye çalıştım ve bu dosyanın PHP hatalarının raporlanmasını devre dışı bıraktığını biliyorum. / ** * Hata raporlamasını devre dışı bırak * * Hata ayıklama için bunu error_reporting (-1) olarak ayarlayın */ error_reporting (0); Bunu etkinleştirdim, bu da NITRO’nun PHP MySQLI uzantısını varsayılan olarak etkinleştirmediğini buldum, WordPress’e ihtiyaç duyuyordu. Nitro belgesini okuduktan sonra, proje dizininde nitro uzantıları çalıştırarak ve MySQLI’yi etkinleştirerek düzeltiyorum.
Hata bu sefer değişti ve WordPress bana bir hata ekranı oluşturma veritabanı bağlantısı verdi.Önceki PHP hata raporlamasını etkinleştirdiğim için, PHP hata günlüğüne baktım ve aşağıdaki hataların bildirildiğini gördüm.Php_network_getaddresses: getAddrinfo başarısız oldu: İsim, Docker’ın nasıl çalıştığına dair sınırlı anlayışımı çözmez, bu hata, Siteye güç veren Docker örneğinin, veritabanına güç veren Docker örneğinin ana bilgisayar adını tamamlayamayacağı anlamına gelir, böylece WordPress bağlanamaz Docker veritabanı örneği. Bu yüzden Nitro Docker örneğini girmek ve Nitro tarafından yapılan ana bilgisayar adı veritabanına ping yapmak için Nitro SSH komutunu kullandım. Bu bana, WordPress ayarlarında ana bilgisayar adı yerine kullandığım IP’nin IP adresini veriyor. Son olarak, Nitro’yu kullanmak için çalışan bir WordPress kurulumum var, ancak yüklemek oldukça zor. Veritabanı IP adresinin değişip değişmeyeceğinden emin değilim, yani wp-config.php’mi güncellemem gerekiyor. Ayrıca her şeyin beklediğim gibi çalışacağından tam olarak emin değilim ve WordPress’i yüklemeyi başardığımda, öğrenemeyecek kadar sinirliydim. Dürüst olmak gerekirse, biraz hayal kırıklığına uğradım. Tabii ki, Craft Nitro zanaat CM’leri göz önüne alınarak yapılır, ancak Laravel’i düşünerek yapılan Laravel çiftliği veya Laravel vale de öyle. Fark, WordPress’i her ikisiyle de kutunun dışında çalıştırabilmenizdir. Devkinsta, yerel gelişim ortamının diğer ucunda, yeni yayınlanan Devkinsta’ya dayanan yerel Docker, Kinsta’daki insanlardan. Kinsta’yı hiç duymadıysanız, Craft CMS ile aynı zamanda başlatılan WordPress ana bilgisayarları yönetilir.
Bildiğim kadarıyla, teknolojilerinin tüm yığınlarını Google Cloud platformunun üzerinde ilk oluşturan ve hızla popüler bir yönetici WordPress sunucusu haline gelen ilk kişilerden biri. Volan LocalWP teklifini takip eden Kinsta, Devkinsta’yı yerel makinenizden WordPress siteleri tasarlamanın, geliştirmenin ve yaymanın bir yolu olarak yayınladı. LocalWP ve Devkinsta gibi araçların amacı, Docker’ın faydalarını WordPress ile yerel gelişim için kullanma yeteneği sunmaktır, ancak karmaşıklık olmadan. Devkinsta, geliştirecek veya WordPress için ve yalnızca müşteriler için bir WordPress sitesi oluşturmak için kullanacak olanlar için tasarlanmıştır, blok editörleri veya öğeler gibi kodlar olmayan araçlar kullanır. Devkinsta’nın yüklenmesi ve yapılandırılması Devkinsta sitesindeki indirme bağlantısını tıklamak size Ubuntu, Windows ve Mac için kurulum için bir bağlantı verecektir. Devkinsta’nın Debian tabanlı olmayan Linux dağıtımları yürüten kullanıcıların olasılığını tahmin etmediğinden şüpheleniyorum. Bu ya da araştırmalarını yaptılar ve bunun sorun olmadığını biliyorlar. Her iki durumda da, MAC ve Windows’un ilk sürümü başlatıldıktan sonra Debian’ın kurulum seçeneklerinin yaklaşık dört ay boyunca mevcut olduğunu görmek iyidir. İndirme sayfasını ziyaret ettiğinizde, “Devkinsta İndirme Kayıt” formları ve indirmeye erişmek için e -posta adresini girmenizi ister. İndirme bağlantısı aslında formun hemen altında ve benim durumumda, formu görmezden gelebilir ve indirme bağlantısını tıklayabilirim.
Kurulumu gerçekleştirdikten sonra, bir Docker’ı indirmek ve yüklemekten Docker konteynerini yapılandırmaya kadar sizin için diğer her şeyi işler. Her şeyi hazırlamak birkaç dakika sürer, bu yüzden başladıktan sonra seçtiğiniz içecekleri alabilir ve kurulumun işlerini yapmasına izin verebilirsiniz. Dikkat edilmesi gereken bir şey, internet bağlantınıza bağlı olarak, bir web sitesi oluşturmaya başlamadan önce her şeyi indirmek ve yüklemek uzun zaman alır. Su ısıtıcısını kaynattım, günümü demledim ve her şey gitmeden önce kahvemi içtim. Yönetilen bir WordPress ana bilgisayar tarafından inşa edilen WordPress’in geliştirilmesi için Devkinsta’nın kullanılması, Devkinsta’nın WordPress ile kullanım için yapıldığı anlamına gelir. Gösterge tablosundan, Devkinsta tarafından sağlanan varsayılanı kullanarak yeni bir yerel WordPress sitesi oluşturabilir, Kinsta hesabınızdan (varsa) herhangi bir siteyi Devkinsta ile kullanmak veya çoğunlukla PHP gibi şeyleri ayarlamanıza izin veren özel bir site oluşturabilirsiniz. Sürüm veya WordPress sürümü.
Nitro gibi, Devkinsta da yerel ana bilgisayarın adını sitenize eşlemek gibi şeyleri işleyecek, böylece bunları web tarayıcısında izleyebilir ve WordPress sitesinin veritabanıyla konuşabilmesi için veritabanı örneği ana bilgisayarının adını eşleyebilirsiniz. Ancak, Nitro’nun aksine, bunların hepsi WordPress için kutunun dışında mükemmel çalışıyor. Site panosuna bayılıyorum. Bu temizdir, ancak ihtiyacınız olan sitenin tüm bilgilerini verir ve siteyi tarayıcıda yerel olarak açmak, siteyi Kinsta sahneleme ortamınıza teşvik etmek, bir veritabanı yöneticisine (bir yönetici kullanan) bakın veya açar veya açar Yönetici WP. Ayrıca yerel sitenin e -posta gelen kutusunu görüntüleme seçeneğiniz vardır (bunun bir e -posta göndermesi ve içeriği görmeniz gerektiğini varsayıyorum). Devkinsta’nın, yerel site dizininizi yapılandırma, Devkinsta varsayılanını kullanmak veya yeni oluşturulan yerel site için kullanıcı adını ve varsayılan yönetici şifresini ayarlamak gibi takdir ettiğim ayarlarda birkaç iyi dokunuş var. Ev sahibi bazlı yerel çevre araçlarından biriyle en büyük şikayetim, diğer barındırma platformlarını desteklememeleridir. Pazarlama/iş açısından, yerel Devkinsta sitelerini Kinsta barındırmaya teşvik etmenin arkasındaki nedenleri anlıyorum. Ancak, bu araçlardan birinin diğer tüm barındırma türleri için FTP ve veritabanı ayrıntılarını yapılandırmayı mümkün kıldığını görmek istiyorum. Eklenti geliştirme odasında ücretsiz WordPress’in geliştirilmesi için kariyer yapan biri olarak, nadiren müşterinin barındırma kararının bir parçası oldum ve bu asla bu aracı kullanamayacağım anlamına geliyor.
Ve sizce WordPress’in bir draması olduğunu düşünüyorsunuz! CMS Craft’ın arkasındaki geliştirici, CMS Craft geliştiricisine açıkça ayarlanan kendi yerel geliştirme ortamlarını oluşturmaya ve serbest bırakmaya karar verdi. Bu resmi olarak 2020’nin başlarında piyasaya sürüldü ve Ubuntu’nun arkasındaki insanlar olan Canonical tarafından yapılan bir uygulama olan Multipass üzerine inşa edildi. Multipass, sanal kutu veya docker içeren bir Vagrant’a benzer bir sanallaştırma platformu sağlar, ancak kullanımı daha kolaydır ve düzenlenir ve daha az kaynak kullanır. Ne yazık ki, o zaman, Multipess’in kullanıcıları hayal kırıklığına uğratan bir dizi hataya sahipti, bu yüzden bir docker kullanmaya geçmeye karar verdiler.
Talihsiz bir durum çünkü bence çoklu şirketler yerel kalkınma ortamında bir sonraki büyük şey olma potansiyeline sahip.Bir platform olarak olgunlaşması sadece biraz zaman alır.Craft CMS ve WordPress benzer teknik gereksinimlere sahip olduğundan, NITRO’nun WordPress için yerel bir bırakma ortamı olarak işlev görüp çalışmadığını görmek ilginç olabileceğini düşünüyoruz.Nitro Craft’ın kurulumu ve yapılandırılması Nitro ile ilgili ilk şey teknik olarak hazırlanmak için oldukça zordur.Her şey kurulum talimatlarında detaylandırılmıştır, ancak önce kendi Docker’ınızı yüklemelisiniz.Hangi işletim sistemini kullandığınıza bağlı olarak, bu zorluk seviyesine göre değişebilir.
Bir Docker yükledikten sonra, işletim sisteminize bağlı olarak birkaç alternatif kurulum seçeneği vardır. MacOS veya Linux kullanıyorsanız, Nitro’yu yüklemek için bir terminal komutunu çalıştırabilirsiniz. Bash <(curl -sls http://installer.getnitro.sh) Yürütülebilecek nitro indirip yükleyen yükleme komut dosyasını indirin ve çalıştırın. [E -posta Korumalı] : ~ $ Bash <(Curl -sls http://installer.getnitro.sh) Paket indirme https://github.com/craftcms/nitro/releases/download/2.0.7/nitro_linux_x86_64 .tar.gz to /home/jonathan/temp_nitro_extract/nitro_linux_x86_64.tar.gz changelog.md lisans.md readme.md nitro indir Complete. ============================================== ===== ======== Senaryo/usr/local/bin yazamayan bir kullanıcı olarak çalıştırıldı. Aşağıdaki komutların kurulumunu tamamlamak için manuel olarak çalıştırılması gerekebilir: ================================== ============================================== ========= =========================== Sudo CP ./Nitro/USR/Local/BIN/Nitro Nitro İnit linux kullandığım için, nitro'nun sudo cp ./nitro/usr/local/bin/nitro çalıştırarak belirli bir dizine yürütülebileceğini de kopyalamam gerekiyor. Bu, her normal sistem kullanıcısının yürütülebilen nitro çalıştırmasına izin verir.
MacOS'ta, Nitro'yu bir homebrawe üzerinden yükleme seçeneğiniz de var. Windows kullanıcılarının WSL 2'yi kullanarak biraz daha karmaşık bir dizi yükleme adımı vardır, bu nedenle yükleme belgesini kontrol etmelisiniz. Ardından, nitro ortamını başlatmak için Nitro Init'i çalıştırırsınız. Bu süreç, belirli çevresel yapılandırma hakkında ne istediğinizi sorar ve her şeyi yönetir. [E -posta korumalı] : ~ $ nitro init nitro ayarlamak … mysql [y/n] kullanmak ister misiniz? Y MySQL 1’in sürümünü seçin. 8.0 2. 5.7 3. 5.6 Seçiminizi girin: 1 PostgreSQL [Y/N] kullanmak ister misiniz? n Redis [Y/N] kullanmak ister misiniz? N Nitro’yu kontrol etmek … … Ağ oluşturma ✓ … Görüntü ✓ … Hacim Oluşturma ✓ … Proxy Oluşturma ✓ Ağı Kontrol Edin … ✓ Ağa Hazır Proxy … ✓ Proxy Hazır Veritabanlarını Kontrol Et .. . … MySQL-8.0-3306.Database 8.0 ✓ Hizmetleri Kontrol Etme … … Dynamodb hizmetini kontrol etmek ✓ … Mailhog hizmetini kontrol etmek ✓ … Redis hizmetini kontrol etmek ✓ Proxy’yi kontrol etmek … … Proxy’yi güncelleme proxy ✓ Ana bilgisayar dosyasının güncellenmesi şifreniz için tanıtılabilir) nitro sertifikalarına artık güvenilir 🔒 Nitro hazır! 🚀
Nitro’yu yükledikten ve başlattıktan sonra bir nitro sitesi ekleyin veya oluşturun, herhangi bir web sitesinin proje dizininde nitro ekle komutunu çalıştırabilirsiniz.Bu, site için hangi ana bilgisayar adını kullanmak istediğinizi ve hangi PHP sürümünü kullanmak istediğinizi soracaktır.Bu ayrıca bir veritabanı oluşturmak ve veritabanı adını sormak isteyip istemediğinizi soracaktır.Gerekli tüm verileri aldıktan sonra, siteyi sizin için devam ettirecek ve yapılandıracaktır.
[E-posta Korumalı] : ~ $ CD/Geliştirme/Siteler/New Sitesi [E-posta Korumalı] : ~ $ nitro ekleme siteleri … [new-site.nitro] ana bilgisayar adını girin: ✓ HOSTNAME to News.nitro ✓ Site ekleme ~/geliştirme/Web Siteleri/Yeni Site Site için Webroot girin [Web]:/✓ Webroot kullanma/PHP sürümünü seçin: 1. 8.0 2. 7.4 3. 7.3 4. 7.2 7.2 5. 7.1 6. 7.0 Seçiminizi girin: 2 ✓ PHP Sürümünü Ayarlama 7.4 Site için bir veritabanı ekleyin [Y/N] y Başlangıç Nitro … … Başlangıç mysql-8.0-3306.database.nitro ✓. .. Nitro-Proxy Başlangıç ✓ Nitro başladı 👍 Yeni veritabanı adını girin: Newsite … veritabanı oluşturma Newsite ✓ Veritabanı eklendi 💪 Yeni site eklendi! 🎉 Şimdi değişiklik uygulayın [Y/N]? Y kontrolü … ✓ Ağa Hazır Proxy … ✓ Proxy Hazır Veritabanlarını Kontrol Etme … … MySQL-8.0-3306.Database.Nitro ✓ Hizmetleri Kontrol Etme … … Dynamodb Hizmetini Kontrol Etme ✓ .. Mailhog hizmetini kontrol etmek ✓ … redis hizmetini kontrol etmek ✓ Siteleri kontrol etmek … yeni-sitro.nitro.nitro.nitro.nitro’yu kontrol etmek ✓ Proxy’yi kontrol etmek … … Proxy’yi güncelleme ✓ Ana bilgisayarlar dosyasını güncelleme (olabilirsiniz Şifreniz için tanıtıldı) Bu bittikten hemen sonra, yerel URL’nize (bu durumda yeni -site.nitro) arama yapabilir ve Nginx sunucusunun görüntülenmesi gereken hiçbir şey olmadığı için beklenen Nginx hata sayfasını görebilirsiniz. Site için.
Proje adı için parametreler sağlamanızı gerektiren Nitro Create’i de kullanabilirsiniz. Bu, yeni bir CMS Craft Proje Dizini oluşturacak ve CMS Craft geliştirme için hazır olan Craft CMS kodunu yükleyecektir. WordPress’in gelişimi için ideal değil, bilmek yararlı. Nitro otomatik olarak Dynamodb ve Redis Services gibi şeyleri içerir. Ancak, bu şeylere ihtiyacınız yoksa, biraz aşırı. Açıkçası, bu Craft CMS’nin geliştirilmesine göre ayarlanmıştır ve Craft CMS geliştiricisinin hizmeti kullandığını varsayıyorum. Yerel geliştirme ortamında e -postaların teslimatını test etmenin iyi bir yolu olan Mailhog ile birlikte toplanmasını seviyorum. WordPress’in geliştirilmesi için Nitro’yu kullanarak Craft Nitro’nun WordPress ile çalışıp çalışamayacağını görmek istiyorum, bu yüzden bir sonraki Step, Nitro ile hazırladığım yerel WordPress.test sitesine çekirdek dosyanın bir kopyasını indirmek ve çıkarmaktır. WP-CHLI’yi iş istasyonumda yükledim, böylece site dizininde WP Core Download’i çalıştırabilirim. WP-CHLI’m yoksa, yalnızca wordpress.org’dan arşivleri indirip çıkarıyorum. Sonra, ünlü 5 dakikalık kurulumu çalıştırmaya karar verdim. Bunu WP-CHLI aracılığıyla yapabileceğimi biliyorum, ancak WordPress’in kurulumuyla bunu olağan bir şekilde yapıp yapamayacağımı görmek istiyorum. Ne yazık ki, işler yanlış oluyor.
Karşılaştığım ilk sorun, kullanıcı adı ve varsayılan veritabanı şifresinin mantıklı olduğunu düşündüğüm hiçbir yerde belgelenmemesiydi. Muhtemelen çoğu CMS zanaat geliştiricisinin sizin için bir proje kimlik bilgisi hazırlayan Nitro Create’i kullanacağıdır. Kazdıktan sonra, ayrıntıları proje kurulum yardım belgesinin altındaki buldum. Ayrıca proje dizinindeki komut satırında Nitro bağlamının çalıştırılmasının veritabanı adları, kullanıcı adları, şifreler ve ana bilgisayar adları ürettiğini öğrendim. Bu arıza ile WordPress kurulumuna tıklıyorum. Veritabanı kimlik bilgisi ekranını girdim, ilgili ayrıntıları girdim, basıldım ve WordPress General’ın “kritik hataları” mesajını sundum. Hata mesajı neyin yanlış olduğunu anlamama gerçekten yardımcı olmadığından, kazmaya başladım. İlk olarak PHP hata günlüğünü kontrol ettim, ancak hiçbir şey bildirilmedi. Bu yüzden xdebug ve phpstorm kullanarak /wp-admin/setup-consig.php dosyasını keşfetmeye çalıştım ve bu dosyanın PHP hatalarının raporlanmasını devre dışı bıraktığını biliyorum. / ** * Hata raporlamasını devre dışı bırak * * Hata ayıklama için bunu error_reporting (-1) olarak ayarlayın */ error_reporting (0); Bunu etkinleştirdim, bu da NITRO’nun PHP MySQLI uzantısını varsayılan olarak etkinleştirmediğini buldum, WordPress’e ihtiyaç duyuyordu. Nitro belgesini okuduktan sonra, proje dizininde nitro uzantıları çalıştırarak ve MySQLI’yi etkinleştirerek düzeltiyorum.
Hata bu sefer değişti ve WordPress bana bir hata ekranı oluşturma veritabanı bağlantısı verdi.Önceki PHP hata raporlamasını etkinleştirdiğim için, PHP hata günlüğüne baktım ve aşağıdaki hataların bildirildiğini gördüm.Php_network_getaddresses: getAddrinfo başarısız oldu: İsim, Docker’ın nasıl çalıştığına dair sınırlı anlayışımı çözmez, bu hata, Siteye güç veren Docker örneğinin, veritabanına güç veren Docker örneğinin ana bilgisayar adını tamamlayamayacağı anlamına gelir, böylece WordPress bağlanamaz Docker veritabanı örneği. Bu yüzden Nitro Docker örneğini girmek ve Nitro tarafından yapılan ana bilgisayar adı veritabanına ping yapmak için Nitro SSH komutunu kullandım. Bu bana, WordPress ayarlarında ana bilgisayar adı yerine kullandığım IP’nin IP adresini veriyor. Son olarak, Nitro’yu kullanmak için çalışan bir WordPress kurulumum var, ancak yüklemek oldukça zor. Veritabanı IP adresinin değişip değişmeyeceğinden emin değilim, yani wp-config.php’mi güncellemem gerekiyor. Ayrıca her şeyin beklediğim gibi çalışacağından tam olarak emin değilim ve WordPress’i yüklemeyi başardığımda, öğrenemeyecek kadar sinirliydim. Dürüst olmak gerekirse, biraz hayal kırıklığına uğradım. Tabii ki, Craft Nitro zanaat CM’leri göz önüne alınarak yapılır, ancak Laravel’i düşünerek yapılan Laravel çiftliği veya Laravel vale de öyle. Fark, WordPress’i her ikisiyle de kutunun dışında çalıştırabilmenizdir. Devkinsta, yerel gelişim ortamının diğer ucunda, yeni yayınlanan Devkinsta’ya dayanan yerel Docker, Kinsta’daki insanlardan. Kinsta’yı hiç duymadıysanız, Craft CMS ile aynı zamanda başlatılan WordPress ana bilgisayarları yönetilir.
Bildiğim kadarıyla, teknolojilerinin tüm yığınlarını Google Cloud platformunun üzerinde ilk oluşturan ve hızla popüler bir yönetici WordPress sunucusu haline gelen ilk kişilerden biri. Volan LocalWP teklifini takip eden Kinsta, Devkinsta’yı yerel makinenizden WordPress siteleri tasarlamanın, geliştirmenin ve yaymanın bir yolu olarak yayınladı. LocalWP ve Devkinsta gibi araçların amacı, Docker’ın faydalarını WordPress ile yerel gelişim için kullanma yeteneği sunmaktır, ancak karmaşıklık olmadan. Devkinsta, geliştirecek veya WordPress için ve yalnızca müşteriler için bir WordPress sitesi oluşturmak için kullanacak olanlar için tasarlanmıştır, blok editörleri veya öğeler gibi kodlar olmayan araçlar kullanır. Devkinsta’nın yüklenmesi ve yapılandırılması Devkinsta sitesindeki indirme bağlantısını tıklamak size Ubuntu, Windows ve Mac için kurulum için bir bağlantı verecektir. Devkinsta’nın Debian tabanlı olmayan Linux dağıtımları yürüten kullanıcıların olasılığını tahmin etmediğinden şüpheleniyorum. Bu ya da araştırmalarını yaptılar ve bunun sorun olmadığını biliyorlar. Her iki durumda da, MAC ve Windows’un ilk sürümü başlatıldıktan sonra Debian’ın kurulum seçeneklerinin yaklaşık dört ay boyunca mevcut olduğunu görmek iyidir. İndirme sayfasını ziyaret ettiğinizde, “Devkinsta İndirme Kayıt” formları ve indirmeye erişmek için e -posta adresini girmenizi ister. İndirme bağlantısı aslında formun hemen altında ve benim durumumda, formu görmezden gelebilir ve indirme bağlantısını tıklayabilirim.
Kurulumu gerçekleştirdikten sonra, bir Docker’ı indirmek ve yüklemekten Docker konteynerini yapılandırmaya kadar sizin için diğer her şeyi işler. Her şeyi hazırlamak birkaç dakika sürer, bu yüzden başladıktan sonra seçtiğiniz içecekleri alabilir ve kurulumun işlerini yapmasına izin verebilirsiniz. Dikkat edilmesi gereken bir şey, internet bağlantınıza bağlı olarak, bir web sitesi oluşturmaya başlamadan önce her şeyi indirmek ve yüklemek uzun zaman alır. Su ısıtıcısını kaynattım, günümü demledim ve her şey gitmeden önce kahvemi içtim. Yönetilen bir WordPress ana bilgisayar tarafından inşa edilen WordPress’in geliştirilmesi için Devkinsta’nın kullanılması, Devkinsta’nın WordPress ile kullanım için yapıldığı anlamına gelir. Gösterge tablosundan, Devkinsta tarafından sağlanan varsayılanı kullanarak yeni bir yerel WordPress sitesi oluşturabilir, Kinsta hesabınızdan (varsa) herhangi bir siteyi Devkinsta ile kullanmak veya çoğunlukla PHP gibi şeyleri ayarlamanıza izin veren özel bir site oluşturabilirsiniz. Sürüm veya WordPress sürümü.
Nitro gibi, Devkinsta da yerel ana bilgisayarın adını sitenize eşlemek gibi şeyleri işleyecek, böylece bunları web tarayıcısında izleyebilir ve WordPress sitesinin veritabanıyla konuşabilmesi için veritabanı örneği ana bilgisayarının adını eşleyebilirsiniz. Ancak, Nitro’nun aksine, bunların hepsi WordPress için kutunun dışında mükemmel çalışıyor. Site panosuna bayılıyorum. Bu temizdir, ancak ihtiyacınız olan sitenin tüm bilgilerini verir ve siteyi tarayıcıda yerel olarak açmak, siteyi Kinsta sahneleme ortamınıza teşvik etmek, bir veritabanı yöneticisine (bir yönetici kullanan) bakın veya açar veya açar Yönetici WP. Ayrıca yerel sitenin e -posta gelen kutusunu görüntüleme seçeneğiniz vardır (bunun bir e -posta göndermesi ve içeriği görmeniz gerektiğini varsayıyorum). Devkinsta’nın, yerel site dizininizi yapılandırma, Devkinsta varsayılanını kullanmak veya yeni oluşturulan yerel site için kullanıcı adını ve varsayılan yönetici şifresini ayarlamak gibi takdir ettiğim ayarlarda birkaç iyi dokunuş var. Ev sahibi bazlı yerel çevre araçlarından biriyle en büyük şikayetim, diğer barındırma platformlarını desteklememeleridir. Pazarlama/iş açısından, yerel Devkinsta sitelerini Kinsta barındırmaya teşvik etmenin arkasındaki nedenleri anlıyorum. Ancak, bu araçlardan birinin diğer tüm barındırma türleri için FTP ve veritabanı ayrıntılarını yapılandırmayı mümkün kıldığını görmek istiyorum. Eklenti geliştirme odasında ücretsiz WordPress’in geliştirilmesi için kariyer yapan biri olarak, nadiren müşterinin barındırma kararının bir parçası oldum ve bu asla bu aracı kullanamayacağım anlamına geliyor.