<aside>
🗿 수료 후, 이력서에 우리가 만들어낸 내용들을 꼼꼼하게 채워넣어야겠죠?
우리 프로젝트의 강점을 잘 녹여내기 위해 회고록 양식을 공유 드립니다.
프로젝트와 작성하시는 회고록을 기반으로 다음 주 멘토님들께서 순회할 예정이니,
새롭게 추가/개선할 기능
이나 수정 방향성
에 대해서 깊은 고민을 할 수 있는 기회가 되길 바랍니다 😊
</aside>
<aside> 📢 중간 발표 이전 기재
</aside>
<aside> 🗿 트러블슈팅
</aside>
배포시 mysplclient install 오류
# 1번 해결책
sudo apt-get install python3.10-dev
sudo apt-get install mysql-client
sudo apt-get install libmysqlclient-dev
sudo apt-get install libssl-dev
pip install mysqlclient
# 2번 해결책
sudo apt update
sudo apt install build-essential
# Python 개발 헤더 파일과 라이브러리, 그리고 mysqlclient 패키지를 위한 MySQL 개발 파일
sudo apt install python3-dev libmysqlclient-dev
pip install mysqlclient
c. 설명
→ **x86_64-linux-gnu-gcc
**와 같은 필요한 컴파일 도구가 시스템에 없어서 'No such file or directory'와 같은 오류가 발생
→ mysqlclient
라이브러리는 C 확장을 사용하므로 컴파일을 위해 gcc가 필요
→ 우분투(Ubuntu)에서는 다음과 같이 build-essential
패키지를 설치하여 이 문제를 해결
소셜로그인 url 오류
문제상황 : 소셜 로그인 구현 중 프론트에서 백엔드로 fetch로 전송은 되는데 계속 500번 서버에러가 뜨는 오류 발생
해결
// 프론트 uri는 백엔드 서버로 보내야하니까 이대로 설정
// 네이버 로그인 데이터 서버로 전송
async function naverLoginApi(Code) {
const response = await fetch(`${backend_base_url}/user/naver/`, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({ "code": Code }),
})
response_json = await response.json()
// 가독성을 위해 나머지 코드는 생략!
URI = "<http://127.0.0.1:5500/>"
# 네이버 소셜 로그인
class NaverLoginView(APIView):
def post(self, request):
``` 생략 ```
access_token_request = requests.post(
"<https://nid.naver.com/oauth2.0/token>",
headers={"Content-Type": "application/x-www-form-urlencoded"},
data={
"grant_type": "authorization_code",
"client_id": client_id,
"client_secret": client_secret,
"redirect_uri": redirect_uri,
"code": code,
},
)
원인
homebrew 오류(brew install mysql오류)
맥북
m1칩일 경우 /opt/homebrew
intel칩일 경우 /user/local 로 되어있어야 함
=> 변경이 안되서 삭제했다가 다시 설치
1. sudo /bin/bash -c "$(curl -fsSL <https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh>)"을 통해 homebrew 삭제
2. sudo rm -rf /opt/homebrew 로 폴더까지 다 삭제
3. /bin/bash -c "$(curl -fsSL <https://raw.githubusercontent.com/Homebrew/install/master/install.sh>)"을 통해 brew 재설치
4. enter 눌러서 계속 진행
하면 재설치가 잘 되어서 다시 원래 프로젝트 터미널로 가서
brew install mysql 하고
pip install -r requirements.txt 하면 잘 설치 완료!
프로젝트 배포와 젠킨스를 같은 인스턴스에 올린 문제
문제상황 : 젠킨스의 인스턴스를 따로 파야하는데 프로젝트 서버 내에 올림
해결
cd ~/deploy/
sudo docker system prune -f
sudo docker-compose pull
sudo docker-compose up --force-recreate --build -d