개발 중 힘들었던 부분
by VICENTE97P4
Dec. 19, 2021, 3:51 p.m.
장고 개발 중 힘들었던 점들을 회상해보겠습니다.
사실 프로였다면 에러화면 캡처를 다 하고 포스팅에 유용하게 썼겠지만..
그땐 차마 생각하지 못하고 그냥 다 지나가서 이미지 자료는 없습니다.. 꽤나 심심한 포스팅이 되겠네요
1. Pillow 설치 문제
#29 341.7 The build failed because the process exited too early.
This probably means the system ran out of memory or
someone called `kill -9` on the process.
requirements.txt를 설치할 때 Pillow 라이브러리 설치과정에서 이런 에러가 발생했습니다.
out of memory 문제였으며, 원인은 라이브러리의 크기가 너무 커서였습니다.
(실제로 필로우는 47MB를 요구했습니다..)
여기저기 막 찾아다니고 여러 솔루션을 적용해봤으나 해결하지 못했습니다..
막상 백, 프론트 엔드는 다 만들어놓고 도커에서 막히다니.. 어처구니가 없었죠..
해결방법은 swap memory 설정이었습니다.
# Confirm you have no swap
sudo swapon -s
# Allocate 1GB (or more if you wish) in /swapfile
sudo fallocate -l 1G /swapfile
# Make it secure
sudo chmod 600 /swapfile
ls -lh /swapfile
# Activate it
sudo mkswap /swapfile
sudo swapon /swapfile
# Confirm again there's indeed more memory now
free -m
sudo swapon -s
# Configure fstab to use swap when instance restart
sudo nano /etc/fstab
# Add this line to /etc/fstab, save and exit
/swapfile none swap sw 0 0
# Change swappiness to 10, so that swap is used only when 10% RAM is unused
# The default is too high at 60
echo 10 | sudo tee /proc/sys/vm/swappiness
echo vm.swappiness = 10 | sudo tee -a /etc/sysctl.conf
혹시 out of memory 문제 때문에 힘든데 RAM에 더 투자하기 힘드신 분은 참고하시기 바랍니다.
2. 이미지 불러오기 문제
이건 사실 아무 문제도 아니었습니다.
그냥 오타에 기인한 문제였죠. nginx.conf 파일 작성 시 발생한 오타였습니다.
(이 오타 찾는 데에 진짜 오랜 시간이 걸렸습니다.. docker는 에러메세지가 부실해서..)
그런데 제가 의아했던 부분은 왜 서버에 이미지가 업로드 되었는데 서버에 설정한 경로에는 안 보이냐?
그냥 로컬에서 서버 돌렸을 때는 잘 보였는데.. 이미지로 돌렸을 때는 안 보였냐?
사실 당연한 이야기죠.. 이미지에 저장되어 있으니까요..
실제로 nginx 내부에서 보면 잘 저장되어 있습니다.
두 문제 모두 심각한 문제도 아니고 해결방안이 어렵지도 않은데 해결하는 데에 굉장히 노력과 시간이 많이 들었습니다.
하루하루 열심히 배워가야겠습니다.
26 view 651
HL6bomgb
Updated: Feb. 22, 2025, 5:35 p.m.
*1
Updated: Feb. 22, 2025, 5:35 p.m.
*1
Updated: Feb. 22, 2025, 5:35 p.m.
*1
Updated: Feb. 22, 2025, 5:35 p.m.
*1
Updated: Feb. 22, 2025, 5:35 p.m.
-1 OR 2+684-684-1=0+0+0+1
Updated: Feb. 22, 2025, 5:35 p.m.
-1 OR 3+684-684-1=0+0+0+1
Updated: Feb. 22, 2025, 5:35 p.m.
*if(now()=sysdate(),sleep(15),0)
Updated: Feb. 22, 2025, 5:35 p.m.
0'XOR(
*if(now()=sysdate(),sleep(15),0))XOR'Z
Updated: Feb. 22, 2025, 5:35 p.m.
0"XOR(
*if(now()=sysdate(),sleep(15),0))XOR"Z
Updated: Feb. 22, 2025, 5:35 p.m.
(select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/
Updated: Feb. 22, 2025, 5:35 p.m.
-1; waitfor delay '0:0:15' --
Updated: Feb. 22, 2025, 5:35 p.m.
-1); waitfor delay '0:0:15' --
Updated: Feb. 22, 2025, 5:35 p.m.
-1 waitfor delay '0:0:15' --
Updated: Feb. 22, 2025, 5:35 p.m.
omDLK6jB'; waitfor delay '0:0:15' --
Updated: Feb. 22, 2025, 5:35 p.m.
-1 OR 845=(SELECT 845 FROM PG_SLEEP(15))--
Updated: Feb. 22, 2025, 5:35 p.m.
-1) OR 202=(SELECT 202 FROM PG_SLEEP(15))--
Updated: Feb. 22, 2025, 5:35 p.m.
-1)) OR 775=(SELECT 775 FROM PG_SLEEP(15))--
Updated: Feb. 22, 2025, 5:35 p.m.
C1lQiq0N' OR 672=(SELECT 672 FROM PG_SLEEP(15))--
Updated: Feb. 22, 2025, 5:35 p.m.
n3urCadj') OR 625=(SELECT 625 FROM PG_SLEEP(15))--
Updated: Feb. 22, 2025, 5:35 p.m.
IfiQqCIU')) OR 25=(SELECT 25 FROM PG_SLEEP(15))--
Updated: Feb. 22, 2025, 5:35 p.m.
*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
Updated: Feb. 22, 2025, 5:35 p.m.
'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'
Updated: Feb. 22, 2025, 5:35 p.m.
'"
Updated: Feb. 22, 2025, 5:35 p.m.
����%2527%2522\'\"
Updated: Feb. 22, 2025, 5:35 p.m.
@@GSuPF
Updated: Feb. 22, 2025, 5:35 p.m.