Crontab Log에 "docker: command not found"가 보일 때

며칠 전부터 Crontab으로 진행하고 있던 Backup이 제대로 진행되지 않아서 Log를 훑어보니 다음과 같이 "command not found" Error가 발생하는 것을 확인할 수 있었다.

Making backup folder for 2022-02-04_01-00
Saving Database Backup in Docker 2022-02-04_01-00
/xx/xx/backup.sh: line 9: docker: command not found

관련되어서 Stackoverflow를 뒤져보니 다음과 같은 조언이 있었다.(참고) 주요 내용은 스킵하고 솔루션은 다음과 같다. 물어본 분은 Python Script를 cron으로 실행하고 싶었나 보다.

관련되어서 Stackoverflow를 뒤져보니 다음과 같은 조언이 있었다.(참고) 주요 내용은 스킵하고 솔루션은 다음과 같다. 물어본 분은 Python Script를 cron으로 실행하고 싶었나 보다.

'which python3' - a possible result is /usr/bin/python3
'Add the result of #1 to the crontab command
A general advice:
Use full path to every resource your sh script is using

쉽게 정리하면 Crontab의 기본 Path 변수로는 Docker의 위치를 파악하고 있지 못해서 발생한 문제이기 때문에 1) Full Path를 적어주던지, 2) Path 환경변수에 추가해줘서 Docker를 인식하도록 바꿔주면 된다.

Export를 써서 기존 $PATH에 docker의 위치로 포함시켜주었다. 이제 남은 것은 에러가 나지 않길 바랄 뿐이다.


(2022.02.06 업데이트)

이렇게 해도 에러가 나는 부분이 있어서,  $Full_Path/docker 형태형 Full Path를 모두 Crontab에 기재해주었고, 현재는 에러가 나지 않는다.

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. 관측된 종속 변수