19/08/2025

Docker-Compose tricks

.env dosyasi

MYSQL_ROOT_PASSWORD=supersecurepassword
MYSQL_DATABASE=appdb
MYSQL_USER=appuser
MYSQL_PASSWORD=anothersecurepassword

Daha sonra bunu degiskenler olarak kullanabiliriz.

version: "3.9"
services:
  mysql:
    image: mysql:8
    environment:
      MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
      MYSQL_DATABASE: ${MYSQL_DATABASE}
      MYSQL_USER: ${MYSQL_USER}
      MYSQL_PASSWORD: ${MYSQL_PASSWORD}

Label

labels:
  - "com.docker.compose.project=freshrss"
  - "environment=production"

Böylece filtrelemek mümkün olabilir.

docker ps --filter "label=environment=production"

Compose Profiles

services:
  app:
    image: myapp:latest
  db:
    image: mysql
    profiles: ["dev"]

Daha sonra istedigimiz kadarini ayaga kaldirabiliriz.

docker compose --profile dev up -d