✔ 저기요! 안 쓰는 티켓 있어요?👀 그럼 넘겨요! = Hey! Toss me!🙋♀️
❓ 전국구의 못쓰게 된 서비스 거래만 모아둔 곳 없을까?
🙏 취소 수수료 물지 말고 간단하게 거래해요!
💪 미용실도! 뮤지컬도! 어떤 예약 서비스라도 좋아요!
FE
BE
CI / CD
![]() |
![]() |
|---|---|
| 유저 간 실시간 채팅 | 이미지 업로드 |
![]() |
![]() |
|---|---|
| 실시간 알림 기능 | 카카오 소셜 로그인 |
![]() |
![]() |
|---|---|
| JWT를 이용한 유저 정보 활용 | 검색 및 필터 기능 |
| Problem | CORS (Cross Origin Resource Sharing) |
|---|---|
| Try to solve | 클라이언트에서 오는 모든 요청에 대한 허용, header에 토큰이 담겨 있을 땐 interceptor를 지나게 하여 CORS 에러를 방지 |
| 서버 측에서 Config 설정 이후에도 해결이 안 되는 경우, 클라이언트 측에서 프록시 서버를 설정 |
@Override
public void addCorsMappings(CorsRegistry registry) {
WebMvcConfigurer.super.addCorsMappings(registry);
registry.addMapping("/**")
.allowedOriginPatterns("*")
.allowedMethods("GET", "POST", "PUT", "PATCH", "DELETE")
.allowedHeaders("*")
.allowCredentials(true)
.maxAge(MAX_AGE);
}server: {
proxy: {
"/api": {
target: "http://20.214.139.103:8080",
changeOrigin: true,
rewrite: (path) => path.replace(/^\/api/, ""),
secure: false,
ws: true,
},
},
},
| Problem | 컨테이너 서버 localhost 사용 불가 |
|---|---|
| Try to solve | 위 현상을 해결해 주기 위해 3개의 컨테이너를 같은 네트워크 상에서 실행시킨다 |
| 해당 앱의 host를 container name으로 대체한다 |
version: '3'
service:
app_name1:
...
networks:
- network_name
app_name2:
...
networks:
- network_name
networks:
network_name:
driver: bridge
spring.datasource.url: jdbc:mysql://app_name1:3306/{database_name}
...
spring.rabbitmq.host: app_name2
| Problem | Cloud에서 다수의 이미지 실행 |
|---|---|
| Try to solve | Docker compose를 활용하지 않은 개별 Comtainer run |
| Docker compose의 depends_on 설정 | |
| Docker image의 용량 Downgrade | |
| Memory swap을 이용한 가상 메모리 확보 |
| Problem | FCM 알림 발송 에러 및 배포 에러 |
|---|---|
| Try to solve | fcm 서버로의 모든 요청에는 예외 처리 |
| 하나의 FCM프로젝트에는 하나의 private key파일과, 기기별로 발급되는 fcm토큰을 사용하여 통신함을 숙지 | |
| FCM 초기화에 필요한 private파일을 불러오는 경로를 수정 |
![]() BE 이보미 GitHub |
![]() BE 최웅준 GitHub |
![]() BE 허진혁 GitHub |
![]() FE 박주경 GitHub |
![]() FE 김규리 GitHub |
|---|












