Skip to content
Back to skills

Container Expert Berkantyilmaz0 Megastore

ASecurity

Docker, Docker Compose ve Nginx yapılandırması için uzman yetenek. Konteynerleştirme, reverse proxy, SSL sonlandırma ve üretim ortamı dağıtımı (production deployment) konularında kullanılır.

  • 666 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added February 8, 2026
devopsjavascriptpythonjavasqlnextjsnodedockergitdatabase

Security analysis

A100/100

Scanned February 12, 2026

npx -y skills add majiayu000/claude-skill-registry --skill container-expert-berkantyilmaz0-megastore --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Container Expert Berkantyilmaz0 Megastore?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Container Expert Berkantyilmaz0 Megastore
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/majiayu000-container-expert-berkantyilmaz0-megastore/badge)](https://www.skillsdirectory.com/skills/majiayu000-container-expert-berkantyilmaz0-megastore)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: container-expert
description: Docker, Docker Compose ve Nginx yapılandırması için uzman yetenek. Konteynerleştirme, reverse proxy, SSL sonlandırma ve üretim ortamı dağıtımı (production deployment) konularında kullanılır.
---

# 🐳 Container Expert (Docker & Nginx)

Bu yetenek, uygulamaların konteynerleştirilmesi (Docker) ve sunulması (Nginx) konularında uzman rehberlik sağlar.

## 🎯 Ne Zaman Kullanılır?
- Kullanıcı "uygulamayı dockerize et" dediğinde.
- "Nginx reverse proxy ayarla" isteği geldiğinde.
- `docker-compose.yml` veya `Dockerfile` oluşturulması gerektiğinde.
- Üretim ortamı (production) dağıtım konfigürasyonlarında.

---

## 🏗️ 1. Dockerfile Standartları

Her zaman **Multi-Stage Build** (Çok Aşamalı İnşa) kullanın. Bu, imaj boyutunu küçültür ve güvenliği artırır.

### Node.js / Next.js İçin Örnek (`Dockerfile`)
```dockerfile
# 1. Aşama: Bağımlılıklar
FROM node:18-alpine AS deps
WORKDIR /app
COPY package.json package-lock.json ./
RUN npm ci

# 2. Aşama: İnşa (Build)
FROM node:18-alpine AS builder
WORKDIR /app
COPY --from=deps /app/node_modules ./node_modules
COPY . .
RUN npm run build

# 3. Aşama: Çalıştırma (Runner)
FROM node:18-alpine AS runner
WORKDIR /app
ENV NODE_ENV production
COPY --from=builder /app/public ./public
COPY --from=builder /app/.next ./.next
COPY --from=builder /app/node_modules ./node_modules
COPY --from=builder /app/package.json ./package.json

EXPOSE 3000
CMD ["npm", "start"]
```

---

## 🐙 2. Docker Compose Şablonları

Servisleri ve veritabanlarını birleştirmek için kullanılır.

### Standart Yığın (`docker-compose.yml`)
```yaml
version: '3.8'

services:
  app:
    build: .
    ports:
      - "3000:3000"
    environment:
      - DATABASE_URL=postgresql://user:pass@db:5432/myapp
    depends_on:
      - db

  db:
    image: postgres:15-alpine
    volumes:
      - db_data:/var/lib/postgresql/data
    environment:
      - POSTGRES_USER=user
      - POSTGRES_PASSWORD=pass
      - POSTGRES_DB=myapp

volumes:
  db_data:
```

---

## 🌐 3. Nginx Yapılandırması

Uygulamanın önüne bir "Kapı Bekçisi" (Reverse Proxy) koymak için kullanılır.

### Örnek `nginx.conf`
```nginx
server {
    listen 80;
    server_name example.com;

    # Gzip Sıkıştırma
    gzip on;
    gzip_types text/plain application/json text/css application/javascript;

    location / {
        proxy_pass http://app:3000; # Docker servis adı
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}
```

---

## 🛡️ Güvenlik ve En İyi Pratikler

1.  **Asla Root Kullanma:** Dockerfile içinde `USER node` gibi root olmayan bir kullanıcıya geçin.
2.  **Alpine Kullan:** `node:alpine` veya `python:alpine` gibi küçük imajları tercih edin.
3.  **.dockerignore:** `node_modules`, `.git`, `.env` gibi dosyaların imaja kopyalanmasını engelleyin.
4.  **Sırlar (Secrets):** Veritabanı şifrelerini asla kodun içine gömmeyin, `.env` dosyasından veya Docker Secrets'tan okuyun.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.