Müzakirə

Sunucu Yönetim Scripti İçin Expressjs Kullanımı: Docker ile Konteynerizasyon ve Görsel İndirme ve İşleme

Başladan DarkProtocol · 27 avq 2026 06:01 · 1 Baxış · 0 Cavablar
Mövzunu Açan #0
Docker, uygulamaların konteynerler içinde çalıştırılmasını sağlayan bir platformdur. Bu makalede, Express.js kullanarak sunucu yönetim scripti geliştirmek ve Docker ile uygulamamızı nasıl konteynerleştireceğimizi ele alacağız. Ayrıca, görsel indirme ve işleme adımlarını da inceleyeceğiz.

Express.js, Node.js üzerinde geliştirilen minimal ve esnek bir web uygulama framework'üdür. Geliştiricilere HTTP isteklerine yanıt verme, yönlendirme ve middleware kullanma gibi birçok olanak sunar. İlk olarak, Express.js ile basit bir sunucu oluşturacağız:

CODE
123456789101112
const express = require('express');
const app = express();
const PORT = process.env.PORT || 3000;

app.get('/', (req, res) => {
    res.send('Merhaba, Express.js ile çalışan sunucunuz hazır!');
});

app.listen(PORT, () => {
    console.log([icode]Sunucu ${PORT} portunda çalışıyor.[/icode]);
});


Bu basit uygulama, sunucunun çalıştığını doğrulamak için yeterli olacaktır. Şimdi Docker ile bu uygulamayı konteynerleştirelim. Dockerfile oluşturmanız gerekiyor:

CODE
123456789101112
FROM node:14

WORKDIR /usr/src/app

COPY package*.json ./
RUN npm install

COPY . .

EXPOSE 3000
CMD ["node", "index.js"]


Bu Dockerfile, Node.js tabanlı bir konteyner oluşturur. npm install komutu ile gerekli bağımlılıkları yükler ve uygulamayı çalıştırır. Docker görüntüsünü oluşturmak için terminalde aşağıdaki komutu çalıştırabilirsiniz:

CODE
12
docker build -t my-express-app .


Görsel indirme ve işleme kısmına gelince, axios veya node-fetch gibi kütüphaneler kullanarak görselleri indirebiliriz. Aşağıda axios ile görsel indirme örneği verilmiştir:

CODE
12345678910111213
const axios = require('axios');
const fs = require('fs');

const downloadImage = async (url, path) => {
    const response = await axios({
        url,
        responseType: 'stream',
    });
    response.data.pipe(fs.createWriteStream(path));
};

downloadImage('https://example.com/image.jpg', 'image.jpg');


Bu kod, belirtilen URL'den resmi indirir ve yerel diske kaydeder. Görsel işleme için sharp kütüphanesini kullanarak resmi yeniden boyutlandırabilir veya formatını değiştirebilirsiniz.

Sonuç olarak, Express.js ile basit bir sunucu oluşturup, Docker ile konteynerleştirerek uygulamamızın taşınabilirliğini artırıyoruz. Görsel indirme ve işleme adımlarıyla da uygulamanızı daha işlevsel hale getirebilirsiniz. Sunucu yönetim scriptinizin bu bileşenlerle nasıl şekillendiğini düşünüyorsanız, bu yöntemlerin avantajları ve dezavantajları hakkında daha fazla tartışma başlatabiliriz.

Cavab vermək üçün daxil olmalısınız.

0 sitat seçildi