Docker 모니터링하면서 죽으면 재시작시키는 스크립트

Docker 모니터링하면서 죽으면 재시작시키는 스크립트
Photo by Luca Bravo / Unsplash

Docker 재시작 스크립트

#!/bin/bash

CONTAINERS=("container1_name" "container2_name") # 감시할 컨테이너 이름 입력
CHECK_INTERVAL=600  # 체크 주기 (초 단위)

while true; do
  for CONTAINER_NAME in "${CONTAINERS[@]}"; do
    # 컨테이너 상태 확인
    CONTAINER_STATUS=$(docker inspect -f '{{.State.Status}}' "$CONTAINER_NAME" 2>/dev/null)

    # 컨테이너가 존재하지 않거나, 비정상 상태일 경우 재실행
    if [[ "$CONTAINER_STATUS" != "running" ]]; then
      echo "$(date) - 컨테이너 '$CONTAINER_NAME' 비정상 상태 감지. 재실행 중..."
      docker start "$CONTAINER_NAME"
    fi
  done
  sleep $CHECK_INTERVAL
done

chmod +x container_watcher.sh
nohup ./container_watcher.sh &

자동시작 설정

sudo nano /etc/systemd/system/container-watcher.service
[Unit]
Description=Docker Container Watcher
After=docker.service
Requires=docker.service

[Service]
ExecStart=/path/to/container_watcher.sh
Restart=always

[Install]
WantedBy=multi-user.target

서비스 시작 및 실행

sudo systemctl daemon-reload
sudo systemctl enable container-watcher.service
sudo systemctl start container-watcher.service

스크립트 수정

nano container_watcher.sh

스크립트 중단

ps aux | grep container_watcher.sh
pkill -f container_watcher.sh

스크립트 실행

nohup ./container_watcher.sh &

스크립트 실행 확인

ps aux | grep container_watcher.sh

서비스 설정 한 경우

sudo systemctl restart container-watcher.service

Read more

DataFrame은 Pandera로, 모델은 Pydantic으로 데이터를 검증한다.

DataFrame은 Pandera로, 모델은 Pydantic으로 데이터를 검증한다.

Pandera: 데이터프레임 검증에 최적화된 도구 주요 장점 * Pandas와 통합: Pandas 데이터프레임에 대해 스키마 기반 검증을 수행합니다. * 유연한 검증 조건: 열 데이터 타입, 값 범위, Null 여부 등 다양한 검증 조건을 정의할 수 있습니다. * 명확한 오류 메시지: 스키마 불일치에 대한 명확한 오류 메시지를 제공합니다. 단점 * 대용량 데이터 검증에서는 속도가 느릴 수

Tobit Regression은 Censored Data에 적합한 Regression이다.

Tobit Regression은 Censored Data에 적합한 Regression이다.

Tobit Regression * Tobit 회귀(Tobit Regression)는 종속 변수가 특정 값에서 절단(Censored)된 상황에서 데이터를 분석하기 위해 사용되는 통계 기법입니다. * James Tobin이 처음 제안한 이 모델은 경제학과 사회과학 분야에서 자주 사용되며, 일반 선형 회귀로는 설명할 수 없는 상황에서 효과적으로 적용할 수 있습니다. Tobit Regression 수식 1. 관측된 종속 변수