Bu makalede, Nodejs ve Docker'ı kullanarak özel bir Full Stack web uygulaması nasıl oluşturulacağı anlatılıyor Adım adım ilerleyerek uygulamanın oluşturulması ve Docker ile nasıl dağıtılacağı açıklanıyor Her seviyede programcı için mükemmel bir kaynak!

Bu makale, özel bir Full Stack Web Uygulaması oluşturmak isteyenler için iki önemli araç olan Node.js ve Docker'in kullanımını ele almaktadır. Node.js, sunucu taraflı JavaScript çalıştırmak için açık kaynaklı bir çalışma ortamıdır. Docker ise yazılım uygulamalarının sanallaştırılarak hızlı bir şekilde oluşturulmasını, test edilmesini, dağıtılmasını ve çalıştırılmasını sağlayan bir platformdur.
Bu makale, Node.js ve Docker'ı nasıl yükleyeceğinizi, yeni bir Full Stack Web Uygulaması nasıl oluşturacağınızı ve nasıl test edeceğinizi ayrıntılı olarak ele alacaktır. Node.js ve Docker yüklemek için adım adım yönergeler verilecek, proje dosyalarını oluşturmak ve backend ve frontend'i birbirine bağlamak adına gerekli adımlar açıklanacaktır. Ardından Dockerfiles oluşturma ve Docker Compose dosyalarını yapılandırma detayları ele alınacaktır. Son olarak, yeni uygulamanızı test etmek için yapmanız gerekenler adım adım açıklanacaktır.
Bu makale, özel bir Full Stack Web Uygulaması oluşturma sürecinde Node.js ve Docker'ın nasıl kullanılacağına dair eksiksiz bir kılavuz olarak tasarlanmıştır. İlgili adımların adım adım izlenmesi, herhangi bir deneyime sahip olup olmadığınıza bakılmaksızın, size başarılı bir Web uygulaması oluşturma yolculuğunda rehberlik edecektir.
Node.js Nedir?
Node.js, açık kaynaklı bir çalışma ortamıdır. JavaScript üzerinde çalışır ve sunucu taraflı bir programlama dili olarak hizmet verir. Node.js'nin en önemli özelliklerinden biri, E / S (Giriş / Çıkış) işlemlerinin verimli bir şekilde yapılabilmesidir.
Node.js, sunucu taraflı JavaScript çalıştırmak için kullanılan Node modülleriyle birlikte gelir. Bu modüller, birçok farklı amaç için kullanılabilir ve uygulama geliştiricileri tarafından kolayca tercih edebilirler.
Bir diğer önemli özellik, non-blocking (bloke etmeme) işlemidir. Bu, Node.js’in tek bir ana işlemi varken, yüz binlerce isteği aynı anda işleyebilme kabiliyeti sağlar. Bu özelliği sayesinde Node.js, büyük ölçekli web uygulamaları için ideal bir seçim haline gelmiştir.
Docker Nedir?
Docker, yazılım uygulamalarının hızlı bir şekilde oluşturulması, test edilmesi, dağıtılması ve çalıştırılması için bir platformdur. Bu platform, yazılım uygulamalarını sanallaştırarak, uygulamanın çalıştırılması için gereken işletim sistemini (OS) herhangi bir platformda çalıştırabilir hale getirir.
Docker, yazılım geliştirme sürecini hızlandırmak için oldukça kullanışlıdır. Bu platform sayesinde uygulamanın geliştirilmesi, test edilmesi ve dağıtılması için gereken süre ve kaynaklar önemli ölçüde azaltılabilir. Ayrıca, uygulamanın farklı ortamlarda çalışması gerektiğinde, Docker sayesinde bu işlem oldukça kolay ve hızlı bir şekilde gerçekleştirilebilir.
Docker kullanarak uygulamanın oluşturulması için gereken tüm bileşenler, bir konteyner olarak adlandırılan birimlerde paketlenir. Konteynerlar, uygulamanın çalışması için gereken her şeyi içerir, bu nedenle uygulama herhangi bir platformda çalıştırılabilir hale gelir.
- Yazılım uygulamalarının bağımlılıklarını ortadan kaldırma
- Uygulamaların hızlı bir şekilde dağıtılması ve çalıştırılması
- Farklı platformlarda çalışma
- Kaynak kullanımı ve uygulama gemilerinin küçültülmesi
- Uygulamanın izolasyonu ve güvenliği
Sonuç olarak, Docker bir yazılım uygulamasının geliştirilmesi, dağıtılması ve çalıştırılması için oldukça kullanışlı bir platformdur. Bu platform sayesinde uygulamanın hızlı bir şekilde oluşturulması, test edilmesi ve dağıtılması mümkündür.
Node.js ve Docker'ı Yükleyin
Node.js ve Docker'ı yüklemek için ayrı ayrı adımlar vardır. Öncelikle, Node.js yüklemek istiyorsanız, resmi web sitesinden indirin ve kurulum sihirbazını izleyin. Kurulum tamamlandıktan sonra, terminalinizde "node -v" komutunu kullanarak Node.js'in yüklü olup olmadığını kontrol edebilirsiniz. Docker yüklemek istiyorsanız, önce işletim sisteminize uygun bir Docker sürümü indirmeniz gerekir. Windows kullanıyorsanız, Docker Desktop uygulamasını indirebilirsiniz. Mac kullanıyorsanız, Docker for Mac'i indirmelisiniz. Linux kullanıyorsanız, Docker Engine Community sürümünü yükleyebilirsiniz.
Node.js ve Docker'ı kurduktan sonra, uygulamayı başlatmak için komut istemi kullanarak "docker-compose up" komutunu çalıştırabilirsiniz. Bu, uygulamanızın backend ve frontend'inin çalıştığı konteynerleri oluşturacaktır. Ayrıca, uygulamayı test etmek için web tarayıcınızda "localhost:3000" adresini ziyaret edebilirsiniz.
Node.js Yükleme
Node.js, sunucu taraflı JavaScript çalıştırmak için kullanılan bir platformdur. Bu işletim sistemi için Node.js yükleme adımları oldukça kolaydır. İlk adım olarak, Node.js web sitesine giderek sürümünü seçmeniz gerekir. Ardından, indirilebilir kurulum dosyasını seçin. İndirme işlemi tamamlandıktan sonra kurulum dosyasını çalıştırın ve kurulum sihirbazını takip edin.
Kurulum sırasında, tipik bir kurulum ve özel bir kurulum seçeneğiniz vardır. Tipik kurulum seçeneği, belirli varsayılan ayarlarla Node.js'yi yükler. Özel kurulum seçeneği, kullanıcıların Node.js'nin kurulum yerini belirlemesine ve ek özellikleri yüklemesine olanak tanır.
Bunun yanı sıra, Node.js'nin farklı sürümlerini yönetmek için Node Version Manager (NVM) kullanabilirsiniz. NVM, kolayca Node.js sürümleri arasında geçiş yapmanıza olanak tanır ve birden fazla projede farklı Node.js sürümleri kullanabilirsiniz.
Docker Yükleme
Docker, web uygulamalarının geliştirilmesi ve yayınlanması sürecinde son derece faydalı bir araçtır. Docker'ın kullanımı, web uygulamalarını hızlı ve kolay bir şekilde hazırlamayı ve yönetmeyi mümkün kılar. Yüklemek için aşağıdaki adımları izleyebilirsiniz:
Adım | Açıklama |
---|---|
1 | Docker'ın son sürümünü indirin. |
2 | İndirilen dosyayı çalıştırın ve kurulum sihirbazını takip edin. |
3 | Kurulum sonrasında Docker'ı açın ve kullanmaya başlayın. |
Bu işlem tamamlandığında, Docker artık bilgisayarınızda çalışır durumda olacaktır. Bundan sonra, Docker'da çalışan web uygulamaları oluşturabilir ve yönetebilirsiniz. Eğer herhangi bir sorunla karşılaşırsanız, Docker'ın resmi belgelerine başvurun ve yardım alın.
Full Stack Web Uygulamasını Oluşturun
Farklı iki platformda çalışan uygulamaları birbirine bağlama işlemi biraz karmaşık olabilir. Ancak Node.js ve Docker kullanarak bir Full Stack Web Uygulaması oluşturmak oldukça kolaydır. Öncelikle yeni bir Node.js projesi oluşturmak için dosyalara ihtiyacımız olacaktır. Bu dosyaları oluşturmak için öncelikle bir dizin oluşturmanız gerekiyor. Ardından, yeni bir paket.json dosyası oluşturun ve tüm gerekli bağımlılıkları yükleyin.
Ardından, bir backend ve bir frontend oluşturmanız gerekiyor. Backend oluşturmak için Express.js gibi bir çerçeve kullanabilirsiniz. Frontend için ise, React.js, Vue.js veya Angular.js gibi bir framework kullanabilirsiniz. Ardından, komut istemini kullanarak backend ve frontend'i birbirine bağlayın.
Bu adımdan sonra, Dockerfiles oluşturma ve Docker Compose dosyalarını yapılandırma işlemine geçebilirsiniz. Docker Compose dosyası oluşturmak ve yapılandırmak için adım adım talimatlar verilir. Ardından, Docker Compose kullanarak konteynerleri oluşturmak ve çalıştırmak için adım adım talimatlar verilir.
Uygulamanızı test etmek ve web tarayıcısında görüntülemek için adım adım yönergeler verilir. Böylece, yeni oluşturulan uygulamanızı test edebilir ve web tarayıcısında görüntüleyebilirsiniz.
Bu adımları takip ederek, yüksek performanslı, güvenli ve ölçeklenebilir bir Full Stack Web Uygulaması oluşturabilirsiniz. Hem Node.js hem de Docker, uygulama geliştirme konusunda oldukça önemli araçlardır. Bu araçların kullanımı, geliştirme ve dağıtım sürecini oldukça kolaylaştırır ve hızlandırır.
Proje Dosyalarını Oluşturun
Bir Node.js projesi oluşturmak, birkaç dosya oluşturma işlemiyle başlar. İlk olarak, yeni bir dizin oluşturmanız gerekiyor. Dizin adı, seçtiğiniz projenin adı olabilir. Ardından, komut istemine gidin ve yeni klasöre gitmek için aşağıdaki komutu girin:
cd /yeni/dizin/yolu
Proje dosyalarını oluşturmadan önce, bir package.json dosyası oluşturmanız gerekir. Bu dosya, proje ile ilgili bilgileri içeren bir yapılandırma dosyasıdır. Aşağıdaki komutu kullanın:
npm init
Bu komut, proje hakkında bazı sorular sorar ve yanıtınızı içeren bir package.json dosyası oluşturur. Bazı sorulara yanıt vermek istemiyorsanız, bu komutu aşağıdaki gibi kullanabilirsiniz:
npm init -y
Bir sonraki adım, 'index.js' dosyasını projenin ana dizininde oluşturmaktır. Bu dosya, ana dosya olarak adlandırılır ve Node.js tarafından yürütülür. Ardından 'package.json' dosyasına eklenmesi gereken bağımlılıkları, örneğin Express veya MongoDB, kullanabilirsiniz.
Elbette, Node.js projenizin dosya yapısı sadece bu dosyalarla sınırlı değildir. Projelere özgü dosyalar, veri tabanı dosyaları vb. oluşturabilirsiniz. Bu dosyaları ayrıca projenin dosya yapısına ekleyebilirsiniz.
Backend ve Frontend'i Bağlayın
Backend ve Frontend'ı birbirine bağlamak için komut istemini kullanabilirsiniz. Bu adımda, backend ve frontend dosyaları arasındaki iletişimi sağlamak için yapılması gereken işlemler açıklanacaktır.
İlk olarak, backend dosyasını açın ve bir API oluşturun. Bu API, frontend dosya sisteminden gelen istekleri işlemek ve yanıtlamak için kullanılacaktır. İsteğe bağlı olarak, bu API'yi Express.js veya Koa.js gibi web çerçeveleri kullanarak da oluşturabilirsiniz.
Frontend dosyasını açın ve API ile iletişime geçmek için Axios veya Fetch gibi bir HTTP istemcisi kullanın. Bu istemciler, verileri backend API'sine göndermek ve backend'den gelen verileri almak için kullanılır.
API ve istemci kodları yazıldıktan sonra, backend ve frontend dosyaları arasındaki iletişimi belirlemek için CORS (Çapraz Kaynak Kaynak Paylaşımı) ayarlamaları yapın. CORS, frontend ve backend'in aynı kaynaktan gelmediği durumlarda oluşabilecek güvenlik sorunlarını önlemek için kullanılan bir mekanizmadır.
Son olarak, frontend dosyasını çalıştırın ve tarayıcınızı açarak web sayfanızı görüntüleyin. Bu noktada, frontend ve backend arasındaki iletişimi sağlamak için gerekli tüm adımlar tamamlanmış olacaktır.
Bu adımların uygulanması sayesinde, backend ve frontend dosyalarınızı birbirine bağlayabilir ve özel bir Full Stack Web Uygulaması oluşturma yolunda önemli bir adım atmış olursunuz.
Konteyner Oluşturun
Konteyner oluşturma, Docker kullanarak yazılım uygulamalarının hızlı bir şekilde kurulmasını, test edilmesini ve çalıştırılmasını sağlar. Konteynerlere, Dockerfile adlı özel bir dosya aracılığıyla yapılandırma yapılmaktadır. Yapılandırma dosyası, uygulamanın özelliklerine göre düzenlenir. Docker Compose ile tek bir yapılandırma dosyasında birden fazla konteyner oluşturmak mümkündür.
Dockerfile'da, uygulama için gerekli olan tüm kaynak dosyaları ve bağımlılıkları belirtilir. Image oluşturmak adına Dockerfile'ın kaydedildiği dizinde docker build
komutu çalıştırılır. Image oluşturma işlemi tamamlandıktan sonra, Docker Compose ile tek bir yapılandırma dosyasında birden fazla konteyner oluşturulabilir.
Docker Compose kullanılarak birden fazla konteynerı yönetmek mümkündür. Yapılandırma dosyası, tüm konteynerların bilgilerini içerir. Konteynerlar ana bilgisayar üzerinde çalışırken, Docker Compose konteynerların birbirleri arasındaki ilişkilerini yönetir. Bu süreç, uygulamalar arasında hızlı veri aktarımı sağlar.
Konteyner oluşturma işlemi, Docker Compose dilinde yapılandırılır. Bu yapılandırmada, konteynerlar için ayrı ayrı birden fazla serviceler belirlenebilir. Docker Compose, birden fazla konfigürasyon dosyasını birleştirerek birden fazla servisu yan yana çalıştırmayı mümkün kılar. Bu sayede, karmaşık yapılandırmalar yapılabilir.
Sonuç olarak, konteyner oluşturma süreci, Docker'da yazılım uygulamalarını hızlı ve kolay bir şekilde oluşturmanın bir yoludur. Konteynerlar, Docker Compose kullanarak yapılandırılabildiği gibi, özel Dockerfile yapılandırmaları da kullanılarak oluşturulabilir. Bu yöntem, özellikle büyük ölçekli uygulamalar için oldukça avantajlıdır.
Docker Compose Yapılandırması
Docker Compose, birden fazla Docker konteynerinin (backend, veritabanı vb.) yapılandırma ve yönetimini kolaylaştıran bir araçtır. Docker Compose dosyası, tüm konteynerleri yapılandırmak, ayarlamak ve başlatmak için kullanılır. İşte Docker Compose dosyası oluşturmak ve yapılandırmak için adım adım talimatlar:
ADIM 1: | Bir YAML dosyası oluşturun ve adını "docker-compose.yml" olarak kaydedin. |
ADIM 2: | Docker Compose dosyasında kullanılan tüm servisleri belirtin. Örneğin, bir backend servisi ve bir veritabanı servisi olabilir. |
ADIM 3: | Her servis için yapılandırmayı belirleyin. Örneğin, backend servisi için, kullanacağı porta veya veritabanı bağlantı bilgilerine ihtiyaç duyabilirsiniz. |
ADIM 4: | Docker Compose dosyasını yalnızca belirli bir ortamda kullanmak isterseniz, belirli anahtarlar ekleyin. Örneğin, geliştirme, test veya canlı ortamların her biri için farklı Docker Compose dosyaları oluşturabilirsiniz. |
Yukarıdaki adımları gerçekleştirdikten sonra, Docker Compose dosyanızı yapılandırmaya hazırsınız. Docker Compose dosyanızı oluşturmak ve yapılandırmak çok önemlidir, çünkü tüm konteynerleri tek bir komutla başlatmanıza ve yönetmenize izin verir. Bu, uygulamanızın kolayca test edilip dağıtılabilmesini sağlar ve zaman tasarrufu sağlar.
Konteynerleri Oluşturma
Bu adımda, konteynerlerin nasıl oluşturulacağına ve çalıştırılacağına dair adım adım yönergeler verilecektir.
1. Docker Compose dosyasını kullanarak konteyneri oluşturun:
$ docker-compose up -d |
2. Konteynerleri listeleyin:
$ docker ps |
3. Çalışan konteyneri durdurmak isterseniz aşağıdaki komutu kullanabilirsiniz:
$ docker-compose down |
Docker Compose ile konteynerlerinizi kolayca oluşturup çalıştırabilirsiniz. Bu işlem bittikten sonra web uygulamanızı test edebilir ve kullanıma hazır hale getirebilirsiniz.
Uygulamanızı Test Edin
Full Stack Web Uygulamanızı oluşturduktan sonra, uygulamanızı test etmeye hazırsınız. Uygulama testi için tarayıcınızı kullanabilirsiniz. İlk olarak, terminalde proje dizinine gidin. Daha sonra, uygulamayı çalıştırmak için şu komutu yazın:
docker-compose up
Bu komut, tüm konteynerleri çalıştırır ve web uygulamanızı tarayıcınızda görüntülemenizi sağlar. Projeyi incelemek için, http://localhost:3000 adresine gidin.
Bu aşamada, uygulamanızı yerel olarak test ettiğiniz için, değişiklikler hızlı bir şekilde yapılabiliyor. Tamamlanan değişiklikler docker-compose komutu ile yeniden yüklenebilir. Yapılan değişiklikleri görmek için, CTRL + C
tuşuna basarak konteyneri durdurun ve docker-compose up
komutunu yeniden çalıştırın. Bu işlem, uygulamanızdaki değişiklikleri test etme sürecini hızlandırır.
Bununla birlikte, uygulamanızın prodüksiyonda nasıl çalışacağını test etmek de önemlidir. Prodüksiyon testleri yapmak için, uygulamanızı barındıracak hosting hizmetine yüklemeniz gerekebilir. Ancak, bu işlemi gerçekleştirmeden önce, uygulamanızın tüm özelliklerini yerel olarak test ettiğinizden emin olun.
Sonuç
Bu yazı, Node.js ve Docker kullanarak özel bir Full Stack Web Uygulaması oluşturma konusunda bir giriş niteliği taşıyor. Adım adım anlatılan yönergeler sayesinde uygulamanızı sanallaştırabilir, hızlıca oluşturabilir, test edebilir ve dağıtabilirsiniz. Node.js, sunucu tarafında JavaScript çalıştırmak için en iyi açık kaynaklı çalışma ortamıdır ve Docker, yazılım uygulamalarını hızlı bir şekilde sanallaştırarak oluşturulmasını, test edilmesini, dağıtılmasını ve çalıştırılmasını sağlayan mükemmel bir platformdur.
Web geliştirme işi yaparken, Node.js ve Docker, yüksek kaliteli web uygulamaları oluşturmanın anahtarıdır. Bu yazıdaki adım adım talimatları takip ederek, kendi özel Full Stack Web Uygulamanızı oluşturabilirsiniz. Node.js ve Docker'ı yüklerken, Full Stack Web Uygulamanızı oluştururken ve test ederken size yardımcı olacak ayrıntılı yönergeleri adım adım takip etmeniz yeterli olacaktır. Gerekli dosya yapılandırması ve konteyner oluşturma adımlarında yoğunlaşarak, uygulamanızı herhangi bir sorun olmadan oluşturabilirsiniz.