Docker 部署

Docker 部署

MLiev IAM 提供多阶段 Docker 构建,生成的镜像包含完整的前端和后端。

构建镜像

docker build -t mliev-iam .

运行容器

docker run -d \
  --name mliev-iam \
  -p 8080:8080 \
  -v $(pwd)/config.yaml:/app/config/config.yaml \
  -v $(pwd)/logs:/app/logs \
  mliev-iam

Docker Compose 示例

version: '3.8'

services:
  mliev-iam:
    build: .
    ports:
      - "8080:8080"
    volumes:
      - ./config.yaml:/app/config/config.yaml
      - ./logs:/app/logs
    depends_on:
      - mysql
      - redis
    restart: unless-stopped

  mysql:
    image: mysql:8.0
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: mliev_iam
    volumes:
      - mysql_data:/var/lib/mysql

  redis:
    image: redis:7-alpine

volumes:
  mysql_data:

健康检查

镜像内置健康检查:GET /health/simple,间隔 30 秒,超时 10 秒。

docker inspect --format='{{.State.Health.Status}}' mliev-iam