Opensource

Thumbor 설치 및 conf 변경 스크립트 (unsafe 제거)

KK_Ryong 2023. 5. 17. 13:58

Thumbor 설치

#python 3 업그레이드
sudo update-alternatives --config python
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.6 2
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
sudo update-alternatives --config python
#3.6 선택
python --version

#yum python 3버전 적용
#sudo vi /usr/bin/yum
#맨 위에   #!/usr/bin/python2로 변경 (2 붙이기)
#sudo vi /usr/libexec/urlgrabber-ext-down
#맨 위에  #!/usr/bin/python2.7 (2.7 붙이기)

sudo sed -i 's@bin/python@bin/python2@g' /usr/bin/yum
sudo sed -i 's@bin/python@bin/python2.7@g' /usr/libexec/urlgrabber-ext-down

sudo yum update -y

#의존성 설치
sudo yum install ffmpeg libjpeg-dev libpng-dev libtiff-dev libjasper-dev libgtk2.0-dev python-numpy python-pycurl webp python-opencv python-dev python-pip

sudo pip install thumbor

#root로 진행
sudo su
thumbor-config > /etc/thumbor.conf

sed -i 's/#QUALITY = 80/QUALITY = 95/g' /etc/thumbor.conf
sed -i 's/#PRESERVE_EXIF_INFO = False/PRESERVE_EXIF_INFO = True/g' /etc/thumbor.conf
sed -i 's/#ENABLE_ETAGS = True/ENABLE_ETAGS = False/g' /etc/thumbor.conf
sed -i 's/#RESULT_STORAGE_EXPIRATION_SECONDS = 0/RESULT_STORAGE_EXPIRATION_SECONDS = 0/g' /etc/thumbor.conf
sed -i "s@#HEALTHCHECK_ROUTE = '/healthcheck'@HEALTHCHECK_ROUTE = '/status'@g" /etc/thumbor.conf
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
Supervisor 설치
sudo pip install supervisor
sudo vi /etc/supervisord.conf

□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□
[supervisord]
[program:thumbor]
command=thumbor --conf="/etc/thumbor.conf" --port=900%(process_num)s
process_name=thumbor900%(process_num)s
numprocs=2
autostart=true
autorestart=true
startretries=3
stopsignal=TERM
stdout_logfile=/var/log/thumbor900%(process_num)s.stdout.log
stdout_logfile_maxbytes=1MB
stdout_logfile_backups=10
stderr_logfile=/var/log/thumbor900%(process_num)s.stderr.log
stderr_logfile_maxbytes=1MB
stderr_logfile_backups=10
□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□
sudo supervisord -c /etc/supervisord.conf

ps -ef | grep supervisord
ps -ef | grep thumbor

sudo netstat -tnlp

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
unsafe 제거 및 결과값 서버에 안쌓이게 
sudo su
vi /etc/thumbor.conf   
수동 변경 또는 치환
sed -i "s/#STORAGE = 'thumbor.storages.file_storage'/STORAGE = 'thumbor.storages.no_storage'/g" /etc/thumbor.conf
sed -i "s/#ALLOW_UNSAFE_URL = False/ALLOW_UNSAFE_URL = False/g" /etc/thumbor.conf
sed -i "s/#ALLOW_OLD_URLS = True/ALLOW_OLD_URLS = True/g" /etc/thumbor.conf
sed -i "s/#SECURITY_KEY = 'MY_SECURE_KEY'/SECURITY_KEY = '난수 또는 특정값 적어서 개발에 전달'/g" /etc/thumbor.conf

kill -9 로 supervisord  thumbor port 순으로 죽이고 새로 올리기

 

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
리눅스 재 시작 시 자동 실행
vi /home/ec2-user/supervisord.sh
-----------------------------------------
sudo supervisord -c /etc/supervisord.conf

ps -ef | grep supervisord
ps -ef | grep thumbor

sudo netstat -tnlp
----------------------------------------
vi /etc/rc.d/rc.local
아래 추가
------------------------------------
sh /home/ec2-user/supervisord.sh
exit 0
------------------------------------
sudo chmod +x /etc/rc.d/rc.local
sudo systemctl start rc-local.service
sudo systemctl status rc-local.service
sudo systemctl enable rc-local.service

'Opensource' 카테고리의 다른 글

Prometheus node_exporter 설치  (0) 2023.06.02
Grafana9 alert templates 그래프 사진 추가  (0) 2023.05.19
Grafana 9 Alert Notification templates  (0) 2023.05.17
jenkins + git 연동 = dev  (0) 2023.03.22
thumbor + vanish  (0) 2023.03.17