ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Docker가 하고싶어요...
    3학년/Project-Codive 2024. 11. 22. 19:08

    안녕하세요

     

    코디브 개발중인 즈말이여라...

     

    제가 뭘 하고있는지 요약해보자면

    저는 코디브 핵심 기능중 하나인 평가보고서를 맡았는데요,

    코드의 문제와 답을 비교해서, 테스트케이스 통과여부, 시간복잡도, 코드스타일분석 , 실행시간,메모리사용량을 보고서로 한눈에 확인할 수 있게 만들어주는 기능입니다.

     

    [ 어떻게 시간복잡도, 메모리사용량을 체크하는가 ? 생각해보기 ]

     

    분명 이 파트를 맡을 때 까지만 해도

     

    " 아 쉽겠는데 ? 코드스타일 분석은 pylint쓰고, 실행 시간은 timeit, 메모리사용량은 memory_profiler

    쓰면 끝이겠는데 ? 시간복잡도만 지피티한테 물어보자 ㅋㅋ "

    했음...

     

    근데 개큰오산이었다.

     

     

    우리는 fastAPI를 백엔드로써 쓰고, ,npm에서 실행함

     

    문제점은 memory_profiler나 timeit 모듈을 쓰려면 파이썬 파일을 실행해야하는데

    우리가 뭐 코드만 받지 따로 파일을 서버에서 실행할 수가 없었음.

     

    개큰당황

     

    [ 어떻게 시간복잡도, 메모리사용량을 체크하는가 ? 생각해보기 ]

    해결법을 좀 강구해본 결과 

    서버를 따로 실행하거나, 외부 유로 API를 쓰거나, Docker!!!!를 쓰던가 해야했음

     

    1.

    우선 먼저docker 사용해서 github에있는 "onlinejudge"쓰려고했음

    > 이미 만들어진 웹이라 따로 restFul하게 url로 통신하지 못함

    >>>기각

     

    2. docker를 사용해서 github에 있는 다른 오픈소스인 "Piston"을쓰자

    딱 내가 찾던 기능 다 있었는데

    > """""""이미친 Cgroup"""""땜에 못함

    cgroup 이 미친것이 날 미치게함

    wsl문제라길래 wsl2 설정도했고, 도커 환경설정에 두번깔았다 지웠고 

    리눅스 커맨드도 새로깔았고 가상화 설정도 두세번 확인했고 파워쉘에서 인터넷에서 하라는거 싹다 해봤는데도 

    하........결국은 cgroup v2가 없다로 귀결됨 진짜 ㅣㅁ쳐버리겠음

    이거때문에 시간 다 버림.

    >>>>기각

     

    3.다른  gitbhub opensource는 얄구져서 or 내가원하는 결과가 안 나와서 기각

    >>>>>기각

     

    4. jdoodle api쓰기

    이건 딱히 내가생각하는 결과를 안 보내줌  . 결과가 맘에안듬 

    >>>기각 

     

    5.shpere judge api 쓰기

    이게진짜 딱 결제만 하면 원하는 결과 줄 거 같은데 

    회원가입하려니까 이메일 인증을 안 보내줌 ,ㅡㅡ

    >>>기각 

     

    등의 이유로. 개빡치는 하루하루를 보내다

     

    결국 캡스톤디자인 마감일이 얼마 안 남아서 GPT API를 쓰다...^^

     

    근데 GPT가 할때마다 결과가 바뀌어서 신뢰할 수 가 없음 ;;

     

    일단 시연 영상에만 어거지로 해놓고 나중에 도커 내가 끝까지 해본다 꼭

     

     

    728x90

    댓글

Designed by Tistory.
티스토리 친구하기