Environment Variables ในบริบทของ Docker แบ่งออกเป็น 2 กลุ่มหลัก: ตัวแปรที่ใช้ควบคุมพฤติกรรมของ Docker Engine/CLI และ ตัวแปรที่ส่งเข้าไปทำงานใน Container
Docker CLI & Engine Environment Variables
ตัวแปรที่ตั้งค่าบนเครื่อง Host เพื่อสั่งการทำงานของคำสั่ง docker หรือ Docker Daemon
| ตัวแปร | หน้าที่ / การใช้งาน |
DOCKER_HOST | กำหนด URL หรือ Unix socket ของ Docker daemon (เช่น tcp://192.168.1.50:2375 หรือ unix:///var/run/docker.sock) |
DOCKER_TLS_VERIFY | เปิดใช้งานการยืนยันตัวตนผ่าน TLS (1 หรือ 0) เมื่อเชื่อมต่อกับ daemon ทางไกล |
DOCKER_CERT_PATH | ชี้ตำแหน่งไดเรกทอรีที่เก็บใบรับรอง TLS (ca.pem, cert.pem, key.pem) |
DOCKER_CONFIG | กำหนดโฟลเดอร์เก็บไฟล์คอนฟิกของ Docker CLI (ค่าเริ่มต้นคือ ~/.docker) |
DOCKER_BUILDKIT | เปิดใช้งานระบบ BuildKit (1 หรือ 0) สำหรับการ build image |
DOCKER_CONTEXT | ระบุ Docker context ที่ต้องการเรียกใช้งานเป็นค่าเริ่มต้น |
DOCKER_DEFAULT_PLATFORM | กำหนด target platform อัตโนมัติเวลา build/run (เช่น linux/amd64, linux/arm64) |
DOCKER_CONTENT_TRUST | บังคับตรวจสอบลายเซ็นดิจิทัลของ image ก่อน pull/push (1 เพื่อเปิดใช้งาน) |
Docker Compose Environment Variables
ตัวแปรที่ใช้ควบคุมพฤติกรรมของ Docker Compose
| ตัวแปร | หน้าที่ / การใช้งาน |
COMPOSE_FILE | ระบุพาธของไฟล์ compose (เช่น docker-compose.yml:docker-compose.prod.yml) |
COMPOSE_PROJECT_NAME | ตั้งชื่อโปรเจกต์ (ค่าเริ่มต้นจะใช้ชื่อโฟลเดอร์) |
COMPOSE_PROFILES | กำหนด profiles ที่ต้องการรัน (เช่น frontend,debug) |
COMPOSE_ENV_FILES | ระบุไฟล์ .env ที่ต้องการโหลดล่วงหน้า |
Container Environment Variables
ตัวแปรที่ส่งเข้าไปให้ Application ภายใน Container ใช้งาน สามารถกำหนดได้หลายวิธี
- ผ่านคำสั่ง CLI:
YAML
YAML
docker run -e NODE_ENV=production -e PORT=8080 my-app