Tool.Yun
Geliştiriciler için kullanışlı araçlar
ActiveDirectory LDAP özellik arayıcısı
DMARC Rapor Analizcisi
DNS Test Cihazı
DNS Yayılım Test Cihazı
Direnç Hesaplayıcısı
Dosya Türü Algılayıcı
E-posta Ayrıştırıcısı
EMV TLV kod çözücü
ETH İşlem Kod Çözücü
GZip/Deflate dönüştürücü
Geri Dönen E-posta Ayrıştırıcısı
HTTPS Test Cihazı
Hassas veri maskeleyici
Hex Kodlayıcı/Kod Çözücü
Kar Tanesi Kimlik Çıkarıcı
Kayan nokta sayı dönüştürücü
Keycode bilgisi
Kısa URL Genişletici
MIME Kodlama Dönüştürücü
Metin Karakter Seti Algılayıcı/Kod Çözücü
MongoDB ObjectId Dönüştürücü
Nmap Komut Oluşturucu
Orta-Endian Dönüştürücü
Outlook MSG Ayrıştırıcısı
Outlook Safelink kod çözücü
Parke dosyaları Okuyucu
RJ45 Cat6 Kablolama Hızlı Referans Kılavuzu
SMART Raw Dönüştürücü
Seri Port Konsolu
SharePoint Paylaşım URL Kod Çözücü
TCPDump Oluşturucu
URL Oluşturucu
URL ayrıştırıcısı
Çerez Ayrıştırıcısı
Ölü Piksel Test Cihazı
键盘测试器
ARPA Kod Çözücü
Apache LogRotate Oluşturucu
BIMI DNS Oluşturucu
Chmod hesaplayıcısı
Cloudflare DNS/RDAP Sorguları
Crontab oluşturucu
Curl Komut Üreticisi
DKIM DNS Oluşturucu
DMARC DNS Oluşturucu
DNS Sorguları
DNSBL Denetleyicisi
FStab Jeneratörü
Görsel Alt Ağ Hesaplayıcı
HAS Dezenfektan
HDD hesaplayıcısı
HTAccess oluşturucu
Htpasswd/htaccess üreteci
IP Adresim
IP Alt Ağları Hariç Tutma Hesaplayıcısı
IP Coğrafi Konum
IPv4 Alt Ağ Listeleyicisi
IPv4 adres dönüştürücü
IPv4 alt ağ hesaplayıcısı
IPv4 aralık genişletici
IPv4-6/IPRange/CIDR, IPRange/CIDR/IPMask'ta
IPv4/6 Aralığı CIDR(ler) Hesaplayıcısı
IPv6 ULA üreteci
IPv6 adres dönüştürücü
IPv6 alt ağ hesaplayıcısı
Iptables Üreticisi
Ipv4/6 CIDR - IP Aralığı Hesaplayıcısı
Kabuk Komutları Biçimlendiricisi
Kabuk Komutları Doğrusallaştırıcı
Kapatma Komutu Oluşturucu
MAC Adresi Dönüştürücü
MAC adresi araması
MAC adresi üreteci
Mikrofon Test Cihazı
Nginx biçimlendirici
Option43 jeneratörü
PTR DNS Oluşturucu
Ping
Port Numaraları
Punycode Dönüştürücü
RAID Güvenilirlik Hesaplayıcısı
RAID Hesaplayıcı
Rastgele port oluşturucu
Rsync Üreticisi
SIP Yetkilendirmesi
SPF DNS oluşturucu
TCP/UDP Port Test Cihazı
Tam Sayılardan IPv4/IPv6'ya
Temel kimlik doğrulama oluşturucu
UFW Komut Üreticisi
Veri Aktarım Hızı Hesaplayıcı
WPA PSK üreteci
Websocket testi
Whois Denetleyicisi
Wireguard Yapılandırma Oluşturucu
X-VR-SpamCause Kod Çözücü
ZPOOL RAID hesaplayıcısı
ZPool Hile Sayfası
Zxcvbn Şifre Gücü
firewalld komut satırı oluşturucu
tools.restic-command-generator.name
tools.url-redirection-checker.name
Çoklu bağlantı indirici
Şifre gücü analizi
Barkod Okuyucu
Barkod üreteci
GTIN Doğrulayıcı
QR Kod çözücü
QR Kod üreteci
QR İletişim Bilgisi Oluşturucu
WiFi QR Kodu üreteci
tools.epc-qrcode-generator.name
AGE Kriptografisi
Ansible Vault şifreleme şifresini çözme
Argon2 Karıştırıcı
Bcrypt
Bech32 Kodlayıcı/Kod Çözücü
CRC hesaplayıcısı
CSR Üreticisi
Dosya Karıştırıcı
ECDSA anahtar çifti oluşturucu
Ed25519 anahtar çifti üreteci
Hmac oluşturucu
JWT Jeneratörü
JWT ayrıştırıcısı
Jasypt Dize Şifrelemesi
Karma metin
Metni Şifrele/Çöz
Niceware Baytlarını Parolaya Dönüştürme
PGP Dosya Şifrelemesi
PGP anahtar üreticisi
PGP şifrelemesi
Paseto/PASERK Kamu/Özel
Paseto/PASERK Yerel
RSA anahtar çifti üreteci
RSA şifrelemesi
RSA/DSA/ECDSA İmzalayan ve Doğrulayan
SAML Ayrıştırıcısı
SSL Sertifika dönüştürücü
Sertifika/Anahtar ayrıştırıcısı
Shamir'in Gizli Paylaşımı
X509 sertifika oluşturucu
Base64 Hex dizi kodlayıcı/kod çözücü
Base64 dosya dönüştürücü
Base64 metin şifreleyici/çözücü
CSV'den Veriye
Coğrafi Koordinat Dönüştürücü
E-posta normalleştirici
Enerji Tüketimi ve Gider Bilgisayarı
Excel'den veriye
Metinden UTF-8 ikilisine
Metinden Unicode'a
Roma rakamı dönüştürücü
Tam sayı taban dönüştürücü
Torrent'ten Mıknatısa
ULID üreteci
Unicode Karakterlerini Java Varlıklarına Dönüştürücü
Veri Depolama Birimi dönüştürücü
dBm mW Dönüştürücü
Çevre Değişkenleri Biçim Dönüştürücü
Çok Birim Dönüştürücü
Özellikler dönüştürücü
Amortisman Hesaplayıcısı
Alan Birimleri Dönüştürücü
Aydınlatma Dönüştürücü
Açı Birimleri Dönüştürücü
Basınç Birimleri Dönüştürücü
Enerji Birimleri Dönüştürücü
Fitness Bilgisayarı
Frekans Dönüştürücü
Güç Dönüştürücü
Gıda Enerji Dönüştürücü
Hacim Akış Hızı Dönüştürücü
Hacim Birimleri Dönüştürücü
Hız Dönüştürücü
Hızlanma Dönüştürücü
Kuvvet Birimleri Dönüştürücü
Kütle Birimleri Dönüştürücü
SI Önekleri Dönüştürücü
Sıcaklık dönüştürücü
Uzunluk Birimleri Dönüştürücü
ANSI Kaçış Test Cihazı
API Testleri
Açık grafik meta üreteci
Bukle Dönüştürücü
CSS/JS Güzelleştirme ve Küçültme
Cli komut düzenleyicisi
Django Gizli Üreticisi
Dosya Bölücü
Favicon Oluşturucu
GitIgnore Oluşturucu
Gitattributes Generator
HEX Dosya Dönüştürücü
Javascript Gizleyici
Javascript Güzelleştirici
Javascript Unobfuscator/Unpacker
Json'dan Protobuf'a
Json'dan SQL'e INSERT
Json'dan Typescript'e
K6 Yük Testi Komut Dosyası Oluşturucu
Kod/Komut Dosyası Vurgulayıcı
Mailto Oluşturucu
Picomatch Test Cihazı
Pomodoro Zamanlayıcısı
SQL Küçültücü
SQL Parametreleri Oluşturucu
SQL güzelleştirici
Stacktrace daha güzel
Swagger kullanıcı arayüzü test kullanıcısı
Teklif Dönüştürücü
Veri Sahtekarı
Veritabanı Bağlantı Dizesi Oluşturucu
Veritabanı Oluşturma Aracı
Veritabanı Tablosu Oluşturucu
İp Kaçışı
EXIF'i kaldır
Filigran
GIF'ten MP4'e
Görüntü Arka Planını Kaldır
Görüntü EXIF/Meta Veri/GPS/JPEG Kalite okuyucu
Görüntü Formatları Dönüştürücü
Görüntü Karşılaştır
Görüntü Renk Çeviricisi
Görüntü yeniden boyutlandırıcı
Görüntüden SVG'ye (potrace)
Görüntüyü ve PDF'yi OCRize edin
HEIC Dönüştürücü
ICO/PNG dönüştürücü
Kamera kaydedici
Resmi kırp
SVG Önizleyici
Bash Hile Sayfası
CSS Seçiciler Hile Sayfası
Docker Compose hile sayfası
Docker Hile Sayfası
Docker SWARM hile sayfası
Dockerfile hile sayfası
Ekran Komutları Hızlı Referans Kılavuzu
Git Semantik Commit Hile Sayfası
Git hatırlatma notu
JSONPath Sözdizimi Hile Sayfası
Jq Hile Sayfası
K8s Hile Sayfası
Markdown Hile Sayfası
Nano Hile Sayfası
Nginx Hile Sayfası
PowerShell Hızlı Başvuru Kılavuzu
Regex hile sayfası
Sed hile sayfası
Tmux Komutları Hızlı Referans Kılavuzu
VIM Hile Sayfası
XPath Sözdizimi Hile Sayfası
Yaygın Regex Hile Sayfası
Zellij Komut Hile Sayfası
chmod Komut Hile Sayfası
CSV'den JSON'a
JS'den JSON'a dönüştürücü
JSON Birleşmesi
JSON Düzleştirici/Düzleştirmeyi Kaldırıcı
JSON Editörü
JSON Linter
JSON farkı
JSON güzelleştirme ve biçimlendirme
JSON küçültme
JSON nesneye
JSON sıralama ustası
JSON to CSV
JSON to Go
JSON'dan .env'ye
JSON'dan C#'a
JSON'dan JS'ye dönüştürücü
JSON'dan Java Varlığına
JSON'dan MessagePack'e
JSON'dan TOML'a
JSON'dan TS'ye
JSON'dan Verilere
JSON'dan XML'e
JSON'dan YAML'ye dönüştürücü
Jq/JSONPath Test Cihazı
Json Boyut Analizcisi
Json Kaçış/Kaçış Kaldırıcı
Json Sorgusu
Json dize dönüştürücü
Json'dan PHP Dizisine
Json'dan PHP Koduna
Json'dan Python'a
Json'dan SQL'e DDL
Json'dan Şemaya
Mesaj Paketini JSON'a Dönüştür
ObjGen'den JSON'a
PHP Dizisini JSON'a Dönüştürme
tools.json-patch.name
BIP39 şifre oluşturucu
Diceware Şifre Oluşturucu
NanoID üreteci
OTP kod üreteci
Parola Üreticisi
Pin Kodu Üreticisi
Rastgele sayı üreteci
Sayı üreteci
Token Oluşturucu
UUID dönüştürücü
UUID üreteci
Docker Compose Doğrulayıcı
Docker Compose Format Dönüştürücü
Docker Compose'dan Docker run dönüştürücüsüne
Docker Compose'dan Quadlet'lere
Docker Compose'u .env dosyasına dönüştürme
Docker Compose'u Kubernetes'e dönüştürme
Docker Görüntü İndirici
Docker Pangolin Etiketleri
Docker çalıştırma ve Docker oluşturma dönüştürücüsü
Docker'ı Docker'a denetle
Docker, Kubernetes'e çalıştırılıyor
Docker, Quadlet'lere koşuyor
Dockerfile Etiket Oluşturucu
Kubernetes RBAC Oluşturucu
Traefik Docker Compose Maker
Bahşiş hesaplayıcı
Matematik Formatları Dönüştürücü
Matematik OCR
Matematiksel ifade hesaplayıcı
Trigonometrik/Denklem Eğrisi Görselleştirici
İkili Hesap Makinesi
Fal çarkı
Kart Seçici
Madeni Para Atma Makinesi
Zar Atıcı
HTML'den PDF'ye
PDF Birleştirici
PDF Doğrusallaştır/HızlıWeb
PDF Metin Çıkarıcı
PDF Sayfa Çıkarıcı
PDF Sıkıştırıcı
PDF imza denetleyicisi
PDF Şifreleme
PDF Şifresini Çöz ve Kilidini Aç
TOML Linter
TOML'den JSON'a
TOML'den YAML'ye
Cron/Hafta İçi Alarmı
ETA hesaplayıcı
Geri sayım
Gün Hesaplayıcısı
Hafta Sayıları Dönüştürücü
Hangi Gün?
ICAL Dosya Ayrıştırıcısı
ICAL Jeneratörü
Kronometre
Saat Dilimi Dönüştürücü
Süre Hesaplayıcısı
TTL hesaplayıcısı
Tarih+Süre Hesaplayıcısı
Tarih-saat dönüştürücü
Zaman Alarmı
iCal Birleşmesi
Cron İfade Oluşturucu
BMI Hesaplayıcı
Döviz Dönüştürücü
IBAN doğrulayıcı ve ayrıştırıcı
IES Aydınlatma Yönergeleri
ISBN Doğrulayıcı ve Ayrıştırıcı
ISO 3166 Ülke Kodları Arama Aracı
ISO 639 Arama Aracı
KDV Numaraları Doğrulayıcı
Kabuk Komutlarını Açıklayın
Koşu Hızı Hesaplayıcı
Kredi Kartı Denetleyicisi
Luhn Doğrulayıcı
RMB Büyük Harf Dönüştürücü
SLA hesaplayıcısı
Takvim Dönüştürücü
Telefon ayrıştırıcı ve biçimlendirici
Unicode Arama
Yazılım lisans uyumluluğu
Çevrimiçi Sözlük
CSS Birim Dönüştürücü
CSS Gradyan Oluşturucu
CSS XPath Dönüştürücü
CSS güzelleştirici
Cihaz bilgileri
Görüntüden CSS'ye
HTML Güzelleştirici
HTML Küçültücü
HTML WYSIWYG düzenleyici
HTML temizleyici
HTML varlıklarından kaçış
HTML'den XHTML'e
HTML'den veriye
HTTP durum kodları
Kullanıcı aracı ayrıştırıcısı
MIME türleri
REM Piksel dönüştürücü
Renk Kontrast Denetleyicisi
Renk dönüştürücü
Renk Çemberi
SVG placeholder oluşturucu
Slugify dizesi
URL Metin Arama Parçası Oluşturucu
URL Temizleyici
URL Yakalayıcı
URL biçimli dizeleri kodla/kodunu çöz
UTM URL Oluşturucu
ObjGen'den HTML'ye
XML Linter
XML biçimlendirici
XML'den JSON'a
XPath Test Cihazı
XSLT test cihazı
YAML Birleşmesi
YAML Düzleştirici/Düzleştirici
YAML güzelleştirici
YAML'den JSON'a dönüştürücü
YAML'den TOML'ye
AI için dosyaları paketle
AI İstemi Ayırıcı
ASCII Art Metin Oluşturucu
Akıllı Metin Değiştirici ve Satır Sonlandırıcı
Alıntı Oluşturucu
Denizkızı ihracatçısı
Dize karartıcı
Emoji seçici
Farklı Kelimeler
GPT Token Kodlayıcı/Kod Çözücü
GPT Token Tahmincisi
Görüntüden ASCII Sanatına
HTML'den metin çıkar
I ve L Denetleyicisi
JSON'dan TOON'a
Kasa dönüştürücü
Klasör Yapısı Diyagramı
Klavye Düzeni Dönüştürücü
Levenshtein Hesap Makinesi
Liste dönüştürücü
Listeleri Karşılaştır
Merhaba jeneratör.
Metin farkı
Metin istatistikleri
Metin Çevirmeni
Metinden Unicode Adlarına
Mors Kodu Dönüştürücü
NATO alfabesine metin
RSVP Okuyucusu
Rastgele Satır Seçici
Regex Test Cihazı
Rün dönüştürücü
Sed Komut üreteci
Sekme tuşuyla boşluklara geçin
Sosyal Bağlantı Paylaşıcısı
TOON'dan JSON'a
Unicode Biçimlendirici
Unicode'dan GSM-7'ye
Yazı Tipi Karşılaştır
Yinelenen Satır Bulucu
Zalgo Jeneratörü/Banner
Benchmark oluşturucu
Coğrafi mesafe hesaplayıcısı
En Boy Oranı Hesaplayıcısı
Yüzdelik Hesaplayıcı
Epub'dan Markdown'a
Html'den Markdown'a
Markdown Editörü
Markdown Farkı
Markdown Lorem Ipsum
Markdown Tablo Güzelleştirici
Markdown Tablosu Oluşturucu
Markdown olarak yapıştır
Markdown toc oluşturucu
Markdown önizlemesi
Markdown'dan DOCX'e
Markdown'dan HTML'ye
Markdown'dan Metne
Markdown'dan veriye
tools.markdown-format-converter.name

Dockerfile hile sayfası

Dockerfile sözdizimi ve derleme hile sayfası

A Dockerfile is the recipe for an image: each instruction runs in order and most of them add a layer. Layers are cached, so the order you write them in decides how fast your rebuilds are.

# syntax=docker/dockerfile:1
FROM node:22-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
CMD ["node", "server.js"]

💡 Start the file with # syntax=docker/dockerfile:1 to get the current BuildKit frontend — that is what enables heredocs, cache mounts and build secrets.

📋 Instruction Reference

InstructionPurpose
FROMThe base image, and the start of a build stage
ARGA build-time variable (--build-arg)
ENVAn environment variable, kept in the final image
WORKDIRThe working directory for the instructions that follow
COPYCopy files from the context (or another stage) into the image
ADDLike COPY, but also fetches URLs and unpacks archives
RUNExecute a command at build time and commit the result
CMDDefault command, easily overridden at docker run
ENTRYPOINTThe executable the container always runs
EXPOSEDocument the port the app listens on
USERThe user the following instructions and the container run as
VOLUMEDeclare a path that should be a mount point
HEALTHCHECKHow Docker decides the container is healthy
LABELImage metadata
SHELLChange the shell used by the shell form of RUN/CMD
STOPSIGNALThe signal sent to stop the container
ONBUILDAn instruction that runs when this image is used as a base

🏗 Base Image & Metadata

# pin the base image — 'latest' makes builds irreproducible
FROM node:22-alpine

# name a stage so later stages can copy from it
FROM golang:1.23 AS build

# an ARG before the first FROM can parameterise the base image itself
ARG NODE_VERSION=22
FROM node:${NODE_VERSION}-alpine

# metadata; the OCI keys are the conventional ones
LABEL org.opencontainers.image.source="https://github.com/acme/app"
LABEL org.opencontainers.image.description="Acme API"

📂 Files & Working Directory

# always set an absolute working directory
WORKDIR /app

# copy from the build context
COPY package*.json ./
COPY . .

# copy and set ownership in one step, no extra layer for chown
COPY --chown=node:node . .

# copy with explicit permissions
COPY --chmod=755 entrypoint.sh /usr/local/bin/

# copy from another stage, or straight from another image
COPY --from=build /src/app /usr/local/bin/app
COPY --from=nginx:alpine /etc/nginx/nginx.conf /etc/nginx/nginx.conf

# ADD unpacks archives and fetches URLs — prefer COPY unless you need that
ADD archive.tar.gz /opt/
ADD https://example.com/file.tar.gz /tmp/

# declare a mount point for data that should not live in the image
VOLUME ["/data"]

⚙️ Build Steps

# shell form: runs through /bin/sh -c
RUN apt-get update && apt-get install -y --no-install-recommends curl \
    && rm -rf /var/lib/apt/lists/*

# exec form: no shell, so no globbing or variable expansion
RUN ["npm", "ci", "--omit=dev"]

# heredoc: a readable multi-line script (BuildKit)
RUN <<EOF
set -eux
apk add --no-cache curl
adduser -D appuser
EOF

# cache mount: keep the package cache between builds
RUN --mount=type=cache,target=/root/.npm npm ci

# secret mount: use a credential without baking it into a layer
RUN --mount=type=secret,id=npmrc,target=/root/.npmrc npm ci

# bind mount: read from the context without copying it in
RUN --mount=type=bind,source=package.json,target=package.json npm ci

🚀 Runtime Configuration

# environment variables are visible to the running container
ENV NODE_ENV=production
ENV PATH="/app/bin:$PATH"

# document the port — this does not publish it, -p does
EXPOSE 3000

# drop root as early as you can
RUN adduser -D appuser
USER appuser

# tell Docker how to check the app is alive
HEALTHCHECK --interval=30s --timeout=3s --start-period=20s --retries=3 \
  CMD wget -qO- http://localhost:3000/health || exit 1

# the signal that stops the process cleanly
STOPSIGNAL SIGTERM

# the command the container runs
CMD ["node", "server.js"]

⚔️ CMD vs ENTRYPOINT

CMDENTRYPOINT
PurposeDefault arguments, or the whole default commandThe executable the image is built around
docker run <image> other-cmdReplaced entirelyStill runs; the argument is appended
Override flag—--entrypoint
Typical useCMD ["node", "server.js"]ENTRYPOINT ["python", "app.py"]
# together: ENTRYPOINT is the binary, CMD holds the default arguments
ENTRYPOINT ["python", "app.py"]
CMD ["--port", "8000"]

# docker run image                 → python app.py --port 8000
# docker run image --port 9000     → python app.py --port 9000

⚠️ Prefer the exec form (["cmd", "arg"]). The shell form wraps your process in /bin/sh -c, which swallows SIGTERM and turns graceful shutdown into a ten-second kill.

🧱 Multi-Stage Builds

Several FROM instructions in one file: build with a fat toolchain, ship only the artifact.

# stage 1 — build
FROM node:22-alpine AS build
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build

# stage 2 — the image that actually ships
FROM nginx:alpine
COPY --from=build /app/dist /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
# a compiled binary on a near-empty base
FROM golang:1.23 AS build
WORKDIR /src
COPY . .
RUN CGO_ENABLED=0 go build -o /out/app ./cmd/app

FROM gcr.io/distroless/static-debian12
COPY --from=build /out/app /app
USER nonroot:nonroot
ENTRYPOINT ["/app"]
# build only up to a named stage — handy for a test or lint stage
docker build --target build -t app:build .

📁 .dockerignore

Everything in the build context is sent to the daemon and busts the cache. Exclude what the build does not need:

.git
node_modules
dist
*.log
.env
Dockerfile
.dockerignore

🧠 Best Practices

  • Order by how often things change: base image, then dependency manifests, then npm ci/pip install, then the source. A source edit should not reinstall dependencies.
  • Pin versions — node:22.11-alpine, not node:latest.
  • One RUN per logical step, chaining installs and cleanup in the same layer (rm -rf /var/lib/apt/lists/*), or the deleted files still weigh on the image.
  • Never bake secrets in. A deleted file stays in the layer below; use --mount=type=secret or build arguments that never reach the final stage.
  • Run as a non-root user and keep the final stage as small as you can (alpine, distroless, scratch).
  • Use COPY, not ADD, unless you specifically want URL fetching or archive extraction.
  • Combine with --platform for multi-arch: docker buildx build --platform linux/amd64,linux/arm64.

🛠 Building & Running

# build from the Dockerfile in this directory
docker build -t my-app .

# build without the cache
docker build --no-cache -t my-app .

# a Dockerfile somewhere else
docker build -f docker/Dockerfile.prod -t my-app .

# pass a build argument
docker build --build-arg NODE_VERSION=20 -t my-app .

# pass a secret (never becomes a layer)
docker build --secret id=npmrc,src=$HOME/.npmrc -t my-app .

# build for another architecture
docker buildx build --platform linux/arm64 -t my-app .

# inspect the layers of the result
docker history my-app

# run it
docker run -p 3000:3000 my-app

📄 Full Example

# syntax=docker/dockerfile:1
FROM node:22-alpine AS deps
WORKDIR /app
COPY package*.json ./
RUN --mount=type=cache,target=/root/.npm npm ci

FROM node:22-alpine AS build
WORKDIR /app
COPY --from=deps /app/node_modules ./node_modules
COPY . .
RUN npm run build

FROM node:22-alpine
LABEL org.opencontainers.image.source="https://github.com/acme/app"
ENV NODE_ENV=production
WORKDIR /app
COPY --from=deps --chown=node:node /app/node_modules ./node_modules
COPY --from=build --chown=node:node /app/dist ./dist
USER node
EXPOSE 3000
HEALTHCHECK --interval=30s CMD wget -qO- http://localhost:3000/health || exit 1
CMD ["node", "dist/server.js"]

📚 Resources

  • Dockerfile reference
  • Building best practices
  • BuildKit mounts (cache, secret, bind)
  • Multi-stage builds