#docker

질문 36
해시태그 없이 키워드만 일치하는 질문은 개수에 포함되지 않아요.

2달 전 · 최범준 님의 질문

MacBook에서 Windows Docker 서버 접속 시 sudo가 필요한데 원인이 뭘까요?

문제 현재 Windows 데스크톱과 MacBook을 사용 중이며, 두 기기는 동일한 로컬 네트워크에 연결되어 있습니다. - 데스크톱(Windows): 유선 랜(Ethernet)으로 연결 - MacBook: Wi-Fi로 연결 Windows 데스크톱에서 Docker를 이용해 로컬 웹 서버(포트 9000)를 실행 중입니다. 컨테이너는 -p 9000:9000 옵션으로 실행되었으며, 0.0.0.0:9000에서 요청을 받을 수 있도록 설정되어 있습니다. 데스크톱에서는 Chrome를 통해 정상적으로 웹 인터페이스에 접속할 수 있습니다. 그러나 MacBook의 Chrome에서 접속하면 페이지를 찾을 수 없다고 합니다. 이상하게도,,, Chrome을 sudo로 실행하면 페이지가 정상적으로 로드됩니다. 추가 정보 - 데스크톱(Windows)과 MacBook은 같은 서브넷에 속해 있습니다. - 웹 서버는 0.0.0.0:9000에서 요청을 받을 수 있도록 설정되어 있어, 다른 기기에서도 접근 가능해야 합니다. - MacBook에서 nc -zv <데스크톱-IP> 9000을 실행하면 포트가 열려 있음을 확인했습니다. - Python 코드에서 requests.get("http://<데스크톱-IP>:9000")을 실행하면, 일반 실행 시 실패하지만 sudo로 실행하면 정상적으로 작동합니다. - MacBook에는 단 하나의 사용자 계정만 존재하며, 해당 계정은 관리자(Admin) 권한을 가지고 있습니다. - macOS 방화벽은 비활성화되어 있으며 (/usr/libexec/ApplicationFirewall/socketfilterfw --getglobalstate로 확인), sudo pfctl -d로 pf 방화벽을 꺼도 문제가 해결되지 않았습니다. 현재까지 파악한 내용 sudo로 실행하면 정상적으로 동작하기 때문에, 현재 문제는 네트워크 연결 자체의 문제가 아니라 macOS의 보안 정책 또는 네트워크 제한과 관련된 것이 아닐까,, 생각하고 있습니다. 해결하고 싶은 질문 - 왜 Chrome을 sudo로 실행해야만 웹 서버에 접속할 수 있을까요? - 왜 일반 사용자 권한으로 실행한 Python의 requests.get() 요청이 차단되고, sudo를 사용해야만 정상적으로 동작할까요? - macOS에서 일반 사용자 프로세스의 네트워크 접근을 제한하는 정책이 있는 걸까요? 있다면 어떻게 해결할 수 있을까요? 스크립트에 모두 sudo를 붙이면 문제가 해결되긴 합니다만,, 명확한 원인이 궁금합니다. 혹시 비슷한 경험을 하신 적이 있는 분이 계시다면 조언 부탁드립니다! 혹은 힌트 키워드라도 던져주시면 감사하겠습니다!

개발자

#mac

#docker

#local-network

답변 0

댓글 0

조회 67

3달 전 · 포크코딩 님의 새로운 답변

CS 전공 4학년 진로고민 조언 부탁드립니다..!

안녕하세요, 생성형 비전 ai를 연구 중인 전공자 4학년 학부 인턴입니다. 요즘 제가 생각보다 연구에 대한 끈기가 부족하다는 것을 깨달아서 (빨리 성과가 나오지 않으면 답답하고 몇개월을 갈아넣은 연구 성과가 학문/이론에서 그치는 것도 답답하더라구요) 랩실을 나오고 취준을 해볼까 고민 중입니다. 연구 자체가 엄청 거부감 들고 싫은건 아니지만.. 결국은 연구를 해도 나중에 리서처나 개발 직군으로 취업을 해야하는데 회사에서 리서치 직군을 애초에 많이 뽑지는 않는데 저보다 탐구/실험하는 과정을 정말 잘 하는 주변 사람들을 보며 제가 충분히 경쟁력을 가질 수 있을지 잘 모르겠더라구요... 지금 fe be ai 다 한 번씩 건들여봤는데 이 중에서 취업할만큼 전문성을 가진 분야는 없는거 같아요. 그래서 빠르게 결단을 내리고 랩실을 나오고 취준을 할지, 랩실에 계속 있을지 고민 중인데 취준을 한다면 fe/be/데이터분석+데이터 엔지니어 중에 고민 중에 있습니다. (ai 엔지니어도 고려 중인데 학위에 대해서는 의견이 분분하긴 하지만석사를 따는게 유리하다고 하네요. 그리고 MLOps 분야는 신입을 잘 안 뽑는다고 알고 있어서..) 결정을 내린 다음 대학원을 안 가고 취준을 한다면 1~1.5년 정도 한 분야에 더 집중할 생각입니다. 그리고 지금은 학사/석사 취업 모두 어느 분야를 취업하든 다 경쟁이 매우 치열한거 같더라구요... 만약 fe를 하게 된다면 제가 시각적인 것을 좋아해서 장기적으로 보았을 때 인터랙티브 미디어 아트쪽으로 커리어를 쌓고 싶다는 생각이 있긴한데, 이게 현실적으로 가능한 것인지는 잘 모르겠습니다... FE는 제가 얕게나마 react, react native를 파본 경험이 있는데 화면에 보여지는게 즐겁긴 하지만 공들여서 만든걸 많이 수정할 때 좀 마음이 아팠던 경험이... 그리고 쏟아지는 기술들을 계속 배워야 한다는 것에 없지않아 피로감을 느꼈던거 같습니다. (그런데 이건 IT쪽이면 연구/개발 어느 분야든 똑같이 적용되긴 하는거라...) BE는 제가 django나 flask로 CRUD 위주로만 구현한..야매로밖에 경험을 안 해봤고 spring은 김영한님 강의 듣다가 중간에 너무 알아야할게 많은거 같아 포기했던 경험이 있습니다. 데이터 분석 + 데이터 엔지니어 같은 경우에는 통계 베이스/데이터 파이프라인 stack 기반이 부족해서 더 공부를 해봐야 할거 같습니다. 관련 공모전 경험도 아직 없고요.. ai 엔지니어 경험으로는 2~3개 정도 프로젝트 형식으로 flask로 ai 모델 서비스에 야매로 연결해본 경험이 전부입니다. (MLOps 역량을 가진 사람을 뽑으려는 추세인거 같은데 kubernetz, docker, 클라우드는 따로 또 공부를 해봐야 합니다) 결국에는 어떤 분야든 다 넘어야 하는 산이 있는 느낌이라 이에 대한 각오는 되어 있는데, 어떤 분야로 더 나아가는게 현명하고 후회없는 선택일지 너무 고민이 됩니다..ㅠㅠㅠ 어떤 직무든 다 힘들고 고된 점들이 있기에 제 성향을 고려하고 각각의 직무의 현실(?)을 보고 제가 이건 정말 오랫동안 하루종일 못 하겠다 싶은 같은 일들을 위주로 가지치기를 하면 좋을거 같다는 조언을 들었습니다. 그래서 각각 직무의 실제 업무 생활이 어떠한지, 그리고 실제 실무에서는 어떤 역량이 중요할지, 어떤 성향을 가진 사람이 어떤 상황을 감내해야 오래 버틸 수 있을거 같은지 알려주시면 감사하겠습니다! 직간접적으로나마 아시는 각각의 직무에 대한 정보 알려주시면 감사하겠습니다 🙇‍♀️ 조언해주시면 제 스스로 현명한 선택을 하는데 큰 도움이 될 것 같습니다!! :)

개발자

#진로

#커리어

#고민

#진로고민

답변 1

댓글 0

조회 154

4달 전 · 하이린 님의 새로운 답변

포트폴리오에서 중요한 것에 대해 조언 부탁드립니다

안녕하세요 현재 졸업예정 전공생입니다 요즘 개발자 취업 시장이 힘들다보니 수준도 많이 올라가고 요구하는 것들도 많아지고 있는 것 같습니다 이전에 했던 프로젝트들은 솔직히 별 볼일 없는 CRUD 기능 구현에만 집중한 프로젝트고 그것 이외에 성능에 대한 고민이라던지 그런 흔적이 전혀 없습니다 이런 수준으론 중소 서류도 불가능 할 것 같아서 하반기까지 새로운 프로젝트를 준비하려고 합니다 그래서 이전 것들 다 버리고 딱 하나만 제대로 만들고 싶습니다 주제 자체는 디스코드 같은 메신저를 만들 것이고 프론트는 웹으로 간단하게만 보여줄 생각입니다 Java, spring, mybatis, mysql Aws ec2, Docker, Jenkins 크게 봤을 때 이정도 스택을 사용할 것입니다 사실 주제나 스택보다는 이 프로젝트를 진행하면서 제 고민을 녹여낸 흔적을 만들고 싶습니다 대용량, 동시성 등등.. 기업 입장에서 좋게 볼 수 있는 고민거리에 대해 여쭤보고 싶습니다 물론 그것을 위한 cs 공부는 하고 있습니다 +추가로.. 이렇게 하반기까지 준비를 했을 때 확실히 차이가 생기겠죠? 취업에 대한 불안감 때문에 하면서도 너무 힘들어서 질문드립니다 요약 1. 기업에서 지원자의 포트폴리오를 볼 때 좋게 볼 수 있는 것들이 있을까요 2. 위 글대로 하반기까지 준비를 했을 때 제 취업에 차이가 생길까요(불안해서 여쭤봅니다)

개발자

#취업

#개발자

#포트폴리오

#프로젝트

답변 2

댓글 0

조회 101

3달 전 · 이성원 님의 새로운 답변

아마존 Ec2 성능

개인적으로 사용할 테스트용서버를 구하고 있습니다. 아무래도 개인적으로 상용하기위한 서버이기 때문에 월에 만원 안쪽으로 사용가능한 서버를 찾고 있으며 Ec2의 경우는 최초1년 무료로 사용가능한것으로 알고 있어 고려중입니다. 혹시 Ec2를 사용해본 경험이 있으신분들 중에 성능에 대해서 문의드립니다. Docker기반 파이썬 fastAPI서버 1기 Java Spring 서버 1기 (jar 기동 고려중이며 추후 Doker로 올릴 가능성 있음) DB서버 1기 (Docker 기반 postgerSQL 고려중) 일단 생각나는것은 이렇게 3가지 입니다. 아직 외부접속같은것은 필요 없기에 아파치와 같은 설정은 생각없습니다. Ec2가 충분히 위 사양을 버텨줄까요? 물론 요청이 많아지면 힘들어지는건 당연할듯합니다만, 일 요청건수 100 ~ 1000건 이내로 고민중입니다.

투표

개발자

#amazon

#ec2

#server

답변 2

댓글 1

조회 1,278

5달 전 · 임정훈 님의 질문

프론트엔드 이직용포폴에 대해 고민이 있습니다.

현재 저는 si회사에서 일한지 1년이 되었고 리액트 ,리액트네이티브로 화면개발 및 어플리케이션 개발을 담당하고 있습니다. 도메인은 주로 Saas이고 헬스케어,학생관리,b2c어플 ,관리자 및 웹대시보드 , 어플 등등 회사의 요구사항에 맞게 프로젝트를 만들어주고 있습니다. ( 주로 한 프로젝트당 프론트1 백1 이렇게 2인1조로 개발을 합니다 ) 지금 당장은 아니지만 1년 후에는 이직 할 계획이라서 미리 공부계획을 세운 후 기술숙달이 되면 이직용 포폴을 만들 생각입니다. 그래서 현재 저는 (docker aws nodejs mysql) 조합으로 백단 공부를 할 예정이고 nodejs부터 차근차근 공부를 해서 프론트 ,백 혼자 해서 이직용 포폴을 만들계획입니다. 일단 제가 가고 싶은 회사가 규모있는 si회사 프론트직군 또는 saas쪽으로 가고싶고, 현재는 모바일과 웹 앞단을 다하고있지만 다음회사부터는 웹 프론트로 전향하고 싶은데 이로 비추어봤을때 이직용 포폴을 만들때 기술을 뭘써야 할지에 대해 두가지의 갈림길에 놓이게 되네요.. 첫번째는 현재 제가 잘 하는 리액트 알엔 조합으로 웹뷰앱 + 백엔드로 한다 이고, 두번째는 넥스트 + 백엔드 조합으로 웹 포폴을 만들 계획입니다. 두개 다 관리자페이지도 만들어서 퀄리티있는 프로젝트를 만들 계획입니다. 이 두개중 이직시 포폴로는 어떤게 더 적합할것 같나요?? 다른 의견 남겨주셔도 감사하고 쓴소리 모두 환영합니다..! 긴 글 읽어주셔서 감사합니다..!

개발자

#이직-준비

#프론드엔드

답변 0

댓글 0

추천해요 2

조회 122

5달 전 · 박정환 님의 새로운 답변

프론트와 배포에 대해서 궁금한점

프론트엔드는 상대적으로 배포에 대한 지식을 덜 요구하는거 같은데 보통 vercel로 배포를 하는데도 봤었고 aws 자체와 좀 거리가 멀었던거같은데 요즘에는 HTML, CSS를 퍼블리싱의 영역으로 보내고, JS, React에 성능 위주의 개발과 프론트엔드만의 독자적인 인프라 구축에 예전보다 많은 관심을 받고 있다고 들었습니다. aws나 docker 같은 것도 요즘 프론트엔드 개발자라면 어느정도 지식 습득이 필요하다고 생각하는데 어떻게 생각하시나요? 아는 동생이 프론트엔드 개발자 지망인데 vercel로 배포만 해보고 어떤식으로 배포되고있는지 효율적으로 배포 플로우를 만들어 보거나 해보지를 못 했다길래 필요한지 궁금해서 qna에 남깁니다.

개발자

#프론트엔드

답변 3

댓글 0

조회 91

6달 전 · 익명 님의 질문

자바 메모리 누수 문제

프로젝트를 끝내고 aws 의 ec2 t2.micro 를 이용해서 배포를 했는데 메모리 누수가 심한 것 같습니다 docker 를 이용해서 배포해주고 있는데 heep space 에러가 메인 페이지 를 새로고침 몇번 하다보면 나더라구요 가상 메모리를 사용해서 메모리를 늘려주거나 코드에서 필요없는 변수를 지워주는 등 해봤는데 효과가 미미한것 같아요 본질 적인 문제는 어떤 시선으로 바라봐야 풀 수 있을까요?? 막막하네요 ㅜㅜㅜ

개발자

#java

답변 0

댓글 0

조회 29

7달 전 · aigoia 님의 답변 업데이트

개발 기간이 길어진 개인 프로젝트, 마이너스 요소일까요?

안녕하세요, 저는 컴퓨터공학과 2학년을 수료하고 현재 공군에서 복무 중이며 전역 이후에 관련 대외활동과 인턴을 위해 노력하고 있는 개발자입니다. 학부 2학년 1학기가 끝나고 23년 7월부터 학교 기숙사에 편의 기능을 제공할 수 있는 웹앱 서비스를 혼자 개발하기 시작했고 (3학년 1학기를 휴학 내고) 24년 7월 1일 입대 전까지 계속 진행하여 초기 배포를 위한 기능의 70%를 구현했습니다. 자대 배치를 받은 후 사지방 컴퓨터로 github codespaces 환경(linux 운영체제 기반이며 웹에서 프로그램을 개발할 수 있는 환경입니다.)에서 우여곡절 끝에 진행하던 프로젝트를 git pull로 불러오고 DB나 platform 등을 docker compose로 세팅해서 지금 다시 개발을 시작하고 있습니다. 군대에서 개발을 할 수 있다는 생각에 정말 기뻤지만 한편으로는 프로젝트의 개발 기간이 너무 길어진 것 같아 걱정이 많습니다. 일단 전술했듯이 프로젝트는 처음부터 지금까지 저 혼자 진행해왔습니다. 애초에 학부 공부, 알고리즘 공부, 주말 야간 아르바이트, 공군에 입대하기 위한 봉사활동과 자격등 공부 등과 병행하였기 때문에 시간을 많이 투자할 수 없었으며 프론트엔드와 백엔드 모두 당연히 저 혼자 맡았고 (프론트와 백) 개발에 쓰이는 프레임워크도 처음 접해보아 배우면서 진행했으며 수 많은 생소한 서드 파티 라이브러리를 도입하느라 진행이 많이 느려졌습니다( 현업에서 쓰이는 여러 가지 기술을 적용하고 싶었고 퀄리티에 대한 욕심이 많아서 그랬던 것 같습니다.). 개발 기술과 환경에 적응이 될 때 즈음엔 여러 군데에서 터지는 에러를 트러블 슈팅하고, 그 중 다수를 블로그에 포스팅하느라 속도가 나지 않았습니다. 그렇게 하여 초기 배포를 위한 기능의 70% 정도(제가 생각하기에)는 완성했지만, 아직까지 codespaces 환경에서 개발하기 위해 해결해야하는 문제가 남아있으며 군 복무중이라 평일엔 시간을 많이 내어도 개발 시간이 현실적으로 3시간을 넘길 수 없습니다(오늘은 부대 휴일이라 이렇게 글을 작성합니다.).그러므로 저는 이 프로젝트를 완성하고 웹앱으로 배포하는데 까지 6개월의 시간이 더 걸린다고 생각합니다(물론 중간에 포기할 생각은 추호도 없습니다.). 이에 저는 아래 질문에 대한 개발 현직자 분들의 생각이 정말 궁금합니다. 1. 제대 후 대외활동과 (체험형)인턴을 위해 서류 평가/면접을 볼 때 이 프로젝트를 포트폴리오로 사용할 생각인데, 프로젝트를 다 완성하고 배포까지 완료했다고 가정하더라도 그 기간이 1년 6개월이라는 것은 분명히 마이너스 요소로 작용하나요? 2. 만약 질문 "1."의 답변에 긍정하신다면 긴 기간의 프로젝트( 혹은 동시에 그 기간에 부응하지 못하는 작품의 퀄리티)를 어떻게 서류 평가/면접에서 정당화하여 의미있는 "스펙"으로 만들 수 있을까요? 긴 글 읽어주셔서 감사합니다, 정중한 답변 부탁드리겠습니다.

개발자

#개인-프로젝트

#개발

#포트폴리오

#입사지원

#취업

답변 2

댓글 0

추천해요 1

조회 295

7달 전 · 형준 님의 질문 업데이트

프로젝트 경험이 부족한 4학년 전공자 부트캠프를 해야 할까요?

안녕하세요 경기도권 대학 컴퓨터공학과에 재학중인 4학년 학생입니다. 우선 현재 제 상황을 설명해보겠습니다. 프로젝트는 총 두 번 진행했습니다. 첫 번째 프로젝트는 Django와 chatGPT를 이용한 프로젝트이고 전 이 프로젝트에서 기본적인 API 구현, chatGPT 연동 그리고 rabbitMQ와 celery를 이용하여 chatGPT의 답변을 비동기로 가져오는 기능을 구현했습니다. 두 번째 프로젝트는 Springboot와 Flask와 RVC(음성 변환 AI 오픈소스)를 이용한 프로젝트를 진행했습니다. SpringBoot는 REST API를 작성하는 서버이고 Flask는 RVC AI 모델 서빙만을 위한 서버입니다. 이 프로젝트에서 SpringBoot REST API 구현, CRUD 구현과 Flask 서버 구현을 맡아서 진행했고 AWS EC2 배포, S3, RDS, DOCKER(Compose), Nginx, Github Action(CI/CD)도 구현했습니다. 올해 여름 방학에 알고리즘 스터디를 통해서 주요 자료구조와 알고리즘에 대해 공부하고 공부한 내용을 블로그에 정리했습니다. 코테 문제는 대략 100문제 조금 안되게 풀었습니다. 대충 실력은 실버 4~2까지는 어찌저찌 풀 수 있는데 실버 1 골드 5는 쉬운 건 풀고 어려운 건 못 푸는 수준입니다. 현재는 CS 스터디 진행중이고 이제 시작하는 단계입니다. 자격증은 정처기 있고 올해 11월 SQLD 응시 예정입니다. 첫 번째 프로젝트는 포폴로 쓰기 애매하고.. 두 번째 프로젝트는 Devops 경험은 충분한 것 같은데 Spring으로 구현한 기능은 아주 기본적인 REST API밖에 없고 Flask(AI)가 메인이다 보니 제대로 된 Spring 프로젝트가 없습니다.그래서 제대로 된 Spring 프로젝트를 만드는 게 우선이라 생각합니다. 그럼 혼자서 사이드 프로젝트를 하거나 부트캠프에 들어가서 기초부터 차근차근 배운 후 팀 프로젝트를 진행하는 방법이 있는데 어떻게 해야 할지 고민입니다. 부트캠프는 거의 대부분이 기초부터 하는 커리큘럼이다 보니 최소 6개월은 해야 한다는 단점이 있고 혼자 하는 건 주변에 물어볼 곳도 없고 좀 막막합니다. 대신 결과물이 조그 부족하더라도 6개월보단 덜 걸릴 것 같습니다. 조언 부탁드립니다..

개발자

#부트캠프

#국비

#전공자

#취준

#취업

#전공

답변 0

댓글 0

추천해요 1

조회 204

7달 전 · 최선호 님의 질문 업데이트

docker에 redis 오류 질문드립니다

안녕하세요 현재 개인프로젝트를 진행하고있습니다. 문제가 있는데, docker에서 app(springboot) + mysql + redis container를 만들어서 docker-compose.yml로 띄운후 localhost:8080 접속시 <오류 내용> Caused by: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: localhost/127.0.0.1:6379 Caused by: java.net.ConnectException: Connection refused 이렇게 오류가 발생하는데 자꾸 redis가 localhost로 뜨는데 docker-compose 설정에는 문제가 없어보이는데 한번 봐주시면 감사하겠습니다 1. docker-compose.yml - db 접속정보와 redis 비밀번호는 지우고 코드를 올렸습니다 - redis 비밀번호는 서버에서 확인했습니다. - redis-cli 명령어로 ping-pong 확인했습니다. - app안에 redis와 db(mysql) 같은 네트워크 보고있음 확인했습니다. - 외부 접속 허용하기 위해 redis,.conf 에 bind 0.0.0.0수정 확인했습니다. - 맥 방화벽도 껐습니다. 2. application.properties -redis 설정정보에 ${SPRING_REDIS_PORT:6379} 이렇게 바인딩도 해봤습니다 -db접속 되는지 확인해봤습니다 아래의 코드를 첨부했습니다. 구글 검색과 gpt검색으로 해결방안 전부 시도해봤지만 자꾸 localhost로 뜨니까 진척도 없고 답답합니다... docker를 처음 사용해보는거라 부족한점이 많은데 어떤 부분에 이해도가 필요한지 봐주시면 정말 감사하겠습니다.

개발자

#springboot

#redis

#docker

#mysql

답변 0

댓글 0

조회 167

9달 전 · 성지수 님의 새로운 답변

환경변수 주입 및 빌드(모노레포)

모노레포 프로젝트 환경 및 요구사항 - 프로젝트는 front(React), back(Node), common 패키지로 구성되어 있으며, 모노레포로 되어있음 - Dockerfile 스크립트에서는 build → run 순서로 실행되도록 구현되어 있음 - 서버 배포 시에는 하나의 포트만 사용해야 하므로 back(Node)에서 front의 정적 파일(index.html)을 실행해야 함 - Docker 빌드 시, front(webpack 빌드)와 back 둘 다 build 스크립트를 실행하고, 이미지 실행 시에는 back만 run 스크립트를 실행하여 back에서 front의 정적 파일을 실행해야 함 - 환경변수는 이미지 실행 시 docker-compose.yml의 env_file 속성을 사용해 외부에서 주입해야 함(환경변수가 바뀌는 상황이 있다면 .env 파일을 수정한 후 다시 빌드해야 합니다.) 예외 상황 Docker 빌드할 때 .env 파일을 포함하지 않고 run 스크립트를 실행(이미지 실행) 시 주입하는데, front 패키지에는 run 스크립트가 존재하지 않습니다. (back에서 front의 정적 파일을 실행) 즉, 환경변수가 주입되지 않고 있음 해결 방법 첫번째는 back에서 front의 dist 파일 호출 시 환경변수 객체를 만들어 value 값을 key 값으로 치환해서 함께 넘기고, index.html의 head에서 window 객체를 활용해 값을 받는 방법 하지만 이 방법은 개발자 도구에서 환경변수 값이 노출되고, window 객체를 활용하기 때문에 새로운 브라우저를 생성할 때마다 사이드 이펙트가 발생할 수 있음 두번째는 모노레포 root 패키지에서 prerun 스크립트로 front의 build 스크립트를 실행하는 방법 스크립트 -> "prerun": "lerna run build --parallel --scope @projectname/front --stream", 이 방법은 빌드를 두 번 실행하므로 자원을 많이 소모하지만, 예외 상황이 없는 것으로 보임 질문 받은 내용 Q. 환경변수를 바꾸는 상황이 존재할까요? A. 회사의 인프라 환경에 따라 다르지만, 포트나 IP가 변경될 수 있는 상황이 있음 예를 들어, 외부 서버에 요청을 보낼 경우 그 서버의 정보가 바뀌면 설정을 변경해야 하며, 다른 서버에 요청할 때 인증 정보를 입력해야 하는데, 토큰이나 사용자 패스워드 값이 변경될 경우에도 수정이 필요함 고민되는 부분 다른 해결 방법이나 비슷한 상황이 있다면 함께 논의하고 싶습니다. ㅎㅎ *프로젝트 구조 root ├── packages │ ├── back │ │ ├── package.json │ │ ├── index.ts │ │ ├── .babelrc │ │ └── ... │ ├── common │ ├── front │ │ ├── public │ │ │ └── index.html │ │ ├── package.json │ │ ├── src │ │ │ └── index.js │ │ ├── src │ │ ├── webpack.config.js │ │ └── ... ├── package.json ├── lerna.json ├── docker-compose.yml ├── Dockerfile * 프로젝트의 중요 정보는 제외했습니다.

개발자

#환경변수주입

#모노레포

#빌드

#node.js

#react

답변 1

댓글 0

조회 97

9달 전 · 강지원 님의 질문 업데이트

프론트엔드 - Docker-Compose 문제

docker-compose를 세팅 중 빌드 오류가 있어 질문 드립니다. 문제의 원인이 prod 환경의 compose.yml라고 예상되어지는데 dev 환경의 compose에서는 env 파일을 정상 인식하지만 prod 환경의 compose에서는 env 파일을 인식하지 못하는 문제인데요. docker-compose 명령어를 실행할 때, .env 파일이 있는 경로에서 실행을 하고있고 docker-compose.prod.yml과 .env 파일에 정의된 변수 이름도 오탈자는 없습니다. 어떻게 해야 docker build시, prod에서는 args를 사용할 때 production.env(= multiple .env)파일을 인식하게 할 수 있을까요? 혹시 제가 놓치고 있는 부분이 있을까요? 추가로, 관련된 코드와 설정은 Stack Overflow에 업로드를 해뒀는데요, 답변 주시면 정말 감사하겠습니다! https://stackoverflow.com/questions/78857841/docker-compose-not-recognizing-environment-variables-in-next-js-application-pro

개발자

#docker

#docker-compose

#도커

#에러

#프론트엔드

답변 1

댓글 0

조회 70

10달 전 · Ted 님의 답변 업데이트

신입 개발자 기술 스택 수준

안녕하세요. 웹 개발 쪽으로 입사한 지 1년 정도 되어가는 신입 개발자입니다. 이전에 "IT 신입 포지션 변경"이라는 질문 글을 쓰고, 많은 관심 가져주셨었는데 그 이후가 현재 상태입니다 ㅎㅎ 약 1년 정도 회사를 다니면서 요즘 궁금한 점이.. 제가 하고 있는, 또는 했었던 것들이 신입 개발자에게 요구되는 당연한 것들인지가 궁금해서 질문드립니다. 먼저, 저희 회사는 중소 기업치고는 사원수가 꽤 있는 편에 속합니다. (2~300전후) 저는 백엔드 공부 후에 어쩌다 보니 프론드 개발자로 입사했고, 추후 백엔드도 같이 맡게 될 거라 듣고 들어왔습니다. 먼저 제가 와서 사용한 기술 스택입니다. (git, postman 등과 같은 툴 또는 라이브러리는 제외) React, Next, Vite, TypeScript, Keycloak, Nginx, Docker, Jenkins, MySQL, MongoDB, Spring, JSP.. 일단.. 생각나는 건 이 정도이고, 막상 적고 보니 많은 걸 했네요.. 지식의 깊이는 물론 신입 입장이기에 깊지는 않지만, 해당 기술들을 사용하고 활용하는 부분에 있어서는 문제 될 정도는 아닌 것 같습니다. 프론트 쪽은 소규모부터 대형 프로젝트(진행 중)까지 거의 혼자? 진행을 했고..(현재 프로젝트의 서버는 시니어분이 하고 계심) 지금도 하고 있습니다. 서버 쪽은 혼자 직접 파이프라인 설계 및 빌드, 배포까지 해봤고 서버에 도커 올리는 것까지도 다 해본 것 같습니다. (물론 정말 힘들었지만 동작은 잘 됨.. 왜 되는지는 그때나 지금이나 저도 모름) 같은 개발자 친구들은 저보고 많이 하는 편이라고는 하는데, 같은 신입이라 정확히 얼마나 많이 하는 건지 감이 잘 안 옵니다. (그냥 하라면 해야지라는 마인드라..) 시니어 분도 조금씩 시키시다가 잘 해내서 점점 업무를 많이 주시는 건 알고 있는데, 현직 자분들의 생각이 궁금합니다.

개발자

#기술스택

#신입

#웹개발

답변 3

댓글 0

조회 1,695

일 년 전 · 신진철 님의 새로운 댓글

SpringBoot와 MySQL 도커 배포 과정에서 계속 오류가 발생합니다.

선배님들 안녕하십니까? 제목 그대로 스프링부트와 MySQL 배포 과정에서 HikariPool-1 - Exception during pool initialization. server-1 | server-1 | java.sql.SQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up. 위와 같은 오류가 발생합니다. MySQL은 정상적으로 배포가 되어서 접근이 가능한 것을 확인했습니다. 하지만, SpringBoot의 경우, 계속 DB와 연결이 실패합니다. 아래는 SpringBoot의 application.properties 파일과 docker-compose.yml 파일입니다. 한 수 가르쳐주셨으면 합니다. 감사합니다. spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.url=${SPRING_DATASOURCE_URL} spring.datasource.username=${SPRING_DATASOURCE_USERNAME} spring.datasource.password=${SPRING_DATASOURCE_PASSWORD} spring.jpa.show-sql=true spring.jpa.hibernate.ddl-auto=update spring.jpa.properties.hibernate.format_sql=true

개발자

#오류

#스프링부트

#도커

#mysql

답변 1

댓글 3

조회 379

일 년 전 · 박정환 님의 답변 업데이트

24살 지거국 대학생 질문 드립니다.

현재 지거국에서 2학년 재학중인 학생입니다. 진로에 대해 고민이 있어 현업자분들에게 여쭤보고자 질문을 남깁니다. 고등학교는 특성화 고등학교로 나와 현장실습에서 전산기기 관리 업무를 하다 3개월 하고 개발자가 하고싶어 나왔습니다. 그리고 코로나 시기라 군 문제를 먼저 해결하려 토익이나 토플 준비를 했고 애매한 점수 670점, 60점을 받았습니다. 군생활은 개발병으로 복무해 괜찮은 경험을 했습니다. 실제 서비스를 유지보수 및 신규 기능과 서비스를 제작하는 경험도 했습니다. 언어는 Vue.js, Node.js, MySQL을 메인으로 겉핥기는 PHP, JSP, Docker 을 사용할 수 있었습니다. 또한 군대에서 고민한 결과 대학교 졸업장이 있어야 지원할 수 있는 범위가 넓어질것 같아서 수능 준비도 병행해서 지거국에 합격했습니더. 하지만 군 보안 때문에 따로 경력으로 쓸수 있게 코드를 보존하지 못했습니다. 지금 제일 후회하고 있습니다. 기억을 더듬어서 다시 만들어 git에 올릴까 고민만 하지 외주하느라, 학교 공부하느라 바쁘다고 핑계대며 실행은 못하고 있습니다. 현재는 서울에서 지방으로 내려와 혼자 생활비를 충당하고 있어서 프리랜서와 학업을 병행하고 있습니다. 학생으로는 받기 힘든 금액을 벌면서 크몽으로 Vue.js, Node.js, MySQL을 사용하여 풀스택으로 간단한 외주를 담당하여 1년간 1500 ~ 2000정도의 매출을 올렸습니다. 학업은 전체 학점은 3.1 전공 학점은 3.8로 유지하고 있습니다. 앞으로의 계획으론 아래와 같습니다. - 대외활동 : 창업 대회 또는 해커톤 입상 최소2회 - 알고리즘 : 백준 플레티넘 문제는 풀 수 있을정도로 반복 - 프로젝트 : 생활비를 벌기 위해 외주를 계속할 예정이며, 시간이 남는다면 개인 프로젝트 진행 계획도 있습니다. - 그 외 : 매일 개발 관력 책을 읽고 있는데, 배웠던 내용 중 하나를 매일 쇼츠나 블로그에 업로드해서 꾸준히 무언가 하고싶습니다. 현재 고민중인 부분은 아래와 같습니다. - 현재 스팩으로 또는 계획대로 성장한다면 대기업 취업이 가능할까? - 만약 어렵다면 어떻게 해야할지 감이 잡히지 않아서 질문을 올리게되었습니다. - 지금 중소기업/스타트에 취업하는게 커리어적으로 더 좋을까요? 지나가다 재미없는 글 끝까지 읽어주셔서 감사드리며 현업자분들의 쓴소리 부탁드리겠습니다!

개발자

#진로고민

#진로

#진로상담

#취업

#대학생

답변 1

댓글 2

조회 238

일 년 전 · 신예찬 님의 새로운 댓글

RCE 보안공격 질문입니다!

안녕하세요 백엔드 취업 준비생입니다 최근 프로젝트를 진행중에 배포서버를 구성해봤습니다 aws ec2에 docker compose로 nginx, WAS, redis를 컨테이너화해 동작시키고, nginx에 의해 3개의 WAS가 로드밸런싱 된 상태입니다(WAS 는 sping boot+spring security+JPA를 사용중입니다) route 53으로 Gabia에서 구매한 도메인을 연결해둬 도메인 접근을 허용해둔 상태입니다 배포 서버가 정상적으로 동작하는지 확인하기 위해 log를 보고 있었는데 이상한 요청이 보였습니다 요청 url에 `chmod 777`이라던지 `rm -rf`가 보여서 식겁해서 일단 서버는 내려뒀습니다 알아보니 RCE라는 공격 방식 같더라고요 그래서 RCE를 막는 최선의 방법이 무엇인지 궁금합니다 또 통상적으로 알고있으면 좋은 보안 방어 기법에는 어떤것들이 있을지 궁금합니다! (가능하면 AWS 과금이 없는방법이면 더 좋을거같아요 😊 😊)

개발자

#nginx

#security

#springboot

#aws-ec2

답변 1

댓글 1

조회 88

일 년 전 · 김인후 님의 새로운 답변

웹 외주 개발 비용 산정 방법이 궁금합니다.

웹 개발 비용의 경우 업체별로 가격 산정 방법이 너무 상이하고, 액수도 차이가 큽니다. 표준적인 계산 방법 또는 업체 평균 가격을 산정하는 방법이 있을까요? 첫 풀스택 개발 외주입니다. 0. 기획과 디자인 업무가 있는데, 이미 어느정도 완성이 되어있습니다. 1. open ai api를 활용하거나 모델을 내재화해서, 프롬프팅 엔지니어링이 필요한 작업이 있습니다. 2. 보안 작업이 중요하여 로그인을 통한 사용자 검증, 관리자 허가 로직이 필요합니다. 3. 페이지는 약 6개 정도로 인풋받은 리포트에 대한 서머리를 제공하는 간단한 웹입니다. 4. aws와 docker를 활용해 서버를 구축할 예정입니다. 제작 기간은 프롬프팅을 포함하여 30일 정도로 예상됩니다. 스타트업과 계약을 하는 방식인데 어느정도 생각하면 될까요? 감사합니다!

개발자

#외주

#풀스택

#풀스택-개발자

#프리랜서

답변 1

댓글 0

조회 396

일 년 전 · cozy 님의 댓글 업데이트

Docker Container에 실행중인 Jar에서 Logback

logback-spring.xml 파일을 작성하고, jar파일로 패키징해서 ec2에 도커로 서버를 띄워둔 상태입니다. 컨테이너에서 실행중인 java application에서의 file logging을 ec2 내부로 곧바로 할 수 있나요?

개발자

#spring-boot

#docker

#logback

#logging

답변 1

댓글 3

조회 177

일 년 전 · 프레드윰 님의 새로운 답변

AWS 서버 인프라 접속 방법 문의드립니다.

AWS 서버 인프라를 아래와 같이 안내 받았는데요. ( [T2] public subnet ) > ( [T3] > [Amazon RDS] private subnet ) T2는 public ip가 있어서 ssh 접속이 되는데.. T2를 거쳐 T3에 접속해야 WAS에 접속해 PHP 소스를 docker로 배포할 수 있는데 SSH Tunning으로 T2거쳐 T3로 접속 할 수 있다는데, ssh -i "YourKey.pem" -L 8888:T3_Private_IP:22 ec2-user@T2_Public_IP 이런 명령어를 실행하고, localhost:8888로 접속하면 T3에 우회 접속 할 수 있다고 해서 계속 시도해보는데 T2에서 T3로 접속이 안되는거같아서 T2에 pem 파일 올려놓고 terminal에서 ssh 명령어로 T3에 직접 접속해보려고 해도 접속이 안되더라구요. 그래서 이게 저의 방법이 잘못된건지.. 아니면 T3의 SSH 포트번호가 기본 22가 아니라 다른 번호인건지 싶네요.. 그리고 db 접속은 T2 > T3 > RDS 이렇게 3단계를 거쳐야하는거 같은데.. MYSQL Client 프로그램같은데서 이렇게 3단계 설정하는건 못본거같은데.. 이건 그냥 T3 ssh terminal까지 접속 후 커맨드로만 db 접속해서 사용할 수 밖에 없는지.. 경험많은 서버 개발자님들 답변 부탁드릴게요~~ 감사합니다!

개발자

#aws

#ssh

#tunneling

#docker

답변 1

댓글 0

조회 130

일 년 전 · 이정민 님의 새로운 댓글

도커 공부 중 궁금한 것

docker 공부 중인 초보 개발자입니다! docker 컨테이너를 실행한다는 것 자체가 host os 위에서 새로운 리눅스 운영체제를 실행한다는 뜻 아닌가요? 예를 들어, nginx 이미지를 다운 받아 컨테이너 실행 시 nginx는 리눅스 환경 위에서 작동되는 것 아닌가요? 근데 왜 굳이 리눅스 관련 이미지를 다운 받아 컨테이너를 실행시키는지 궁금합니다.... 도대체, 리눅스 관련 이미지를 다운받아 컨테이너를 실행하는 것과 그렇지 않은 상태에서 컨테이너를 실행하는 것.. 도대체 무슨 차이인가요..ㅠㅜ

개발자

#docker

#linux

#도커

#wsl

답변 2

댓글 2

조회 147

일 년 전 · 익명 님의 질문

Streamli app Azure에 배포시.

Python Streamlit으로 앱을 하나 작성 했고 Docker image로 빌드해서 azure container repository에 푸쉬 했습니다. 그리고 이미지를 기반으로 app service를 띄웠는데요. 로컬에서는 아무 문제 없이 작동이 되는데 리모트로 올라가니 streamlit cookie manager 및 feedback component를 로딩하질 못 합니다. (사실 쿠키 매니저는 설치한 적이 없어서 왜 문제가 되는지 더더욱 잘 모르겠네요) 에러 문구에는 네트워크 레이턴시나 프록시 이슈로 컴퍼넌트를 로딩 못 하는 걸수 있다 라고 하는데 혹시 관련해서 비슷한 이슈 해결하신분 계실까요?

개발자

#streamlit

#azure

#docker

#appservice

답변 0

댓글 0

조회 79

일 년 전 · 안희수 님의 새로운 답변

풀스택 개발자가 하고싶으면 어떻게 해야할까여

현재 리액트 fastapi 조금씩 공부중이고, 팀플덕분에 nginx, docker 찍먹해서 fastapi 서버를 네이버 클라우드에 올리는 것을 지피티 써서 해보긴했습니다. 근데 너무 겉핡기같아서.. 정확하게 깊이 공부하려면 어디부터 시작해야할지 궁금합니다!

개발자

#공부고민

답변 1

댓글 0

조회 71

5달 전 · 문석 님의 새로운 답변

docker-compose를 통해 redis와 boot연결 중 생기는 오류

안녕하세요 백엔드 개발자를 준비중인 대학생입니다. 현재 자바, 스프링부트로, 인텔리제이로 백엔드 개발을 하고 있습니다.(jdk 17) 이번에 프로젝트 중 도커에 대해서 필요성을 느껴 도커를 연결 중에 있습니다. 현재 상황이 db, redis, boot를 docker-compose에 올려서 실행했는데 3개 모두 다 실행은 된 상태입니다.!!!!! db와 boot는 연결이 가능하지만 boot와 redis 연결 중 오류가 뜹니다. 보이는 주 오류는 아래의 2개와 같습니다. org.springframework.data.redis.RedisConnectionFailureException: Unable to connect to Redis Caused by: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: localhost/127.0.0.1:6379 redis를 직접 실행해보니 localhost로는 정상적으로 실행이 되어 돌아가는데!!!!!!!!!!!!!!! host에 docker-compose에 적은 컨테이너 설정 이름인 redis를 입력하니 위와 같은 오류가 나타납니다.!!!!!!!!! 왜 2번째 오류 문구처럼 Connection refused: localhost/127.0.0.1:6379 라고 뜨는지도 이해가 안가고 구글링을 통해서 계속 찾아봐도 미칠지경까지 와버렸습니다.. 며칠째 이것때매 다른 것을 못하는 상황입니다 ㅜ 아래에 전체적인 코드를 남기겠습니다. 도와주세요!!!!! 제발요... 코드는 redis연결만 문제가 있어 다른 그 부분만 올렸습니다.

개발자

#백엔드

#도커

#redis

#spring

#오류

답변 3

댓글 0

조회 543

일 년 전 · 김도원 님의 답변 업데이트

퇴사한지 반년 넘은 3년차 java 개발자 입니다..

전 회사에서 크롤링으로 혹사당한 후 대상포진까지 걸리고 더는 안되겠다 싶어 퇴사하고 3개월정도 휴식기를 가지고 3개월째 준비하고 있습니다. 총 반년.. 사이드프로젝트도 계속 만들고 있는데 어디까지 손봐야 하는지 감이 잡히지 않습니다.. 코딩테스트는 사실상 준비하지 않아서 과제테스트를 보는 곳으로 생각하고 있는데 3년차로 들어가게 된다면 어떤 것을 해야하는지 혼란합니다. 현재는 spring security, jwt, oauth2 를 이용해 로그인 기능을 구현해 놓은 상태에 docker, aws, jenkins를 이용해 서버에 올리는 정도까지만 진행한 상태입니다.. 찾아보니 redis, kafka 같은 것들도 해야 할 것만 같은데 시간이 없는 상태에서 진행하는게 맞을까요? 테스트코드도 습관이 되어 있지 않아서 혼자서 작성하려니 너무 벅찬 느낌이 듭니다.. 현재하고 있는 것에서 마무리하고 구직을 해도 상관없을지, 더 배우고 채워야 할지 모르겠습니다,,

개발자

#이직

#java

#백앤드

#3년차

답변 5

댓글 6

추천해요 10

조회 3,707

일 년 전 · 장성호 님의 답변 업데이트

docker container 내부의 spring boot 서버에서 client 의 ip 주소 알아내는 방법

안녕하세요 지금 만들고 있는 서비스가 설치형 어플리케이션에, 리눅스 파일 시스템을 사용해야해서 처음부터 docker 환경으로 spring boot 서버 환경을 세팅하고 시작했습니다. 순조롭게 진행하다가 한 부분에서 막히게 되었는데요, spring boot 서버 내에서 현재 요청한 클라이언트의 ip를 기존에 등록한 아이피와 비교하여 다른 아이피일 경우 요청을 거부하는 보안 로직을 구현해야하는 부분입니다. 문제가 되는 부분은 요청한 클라이언트의 ip를 알아내는 부분인데요 원래 하던것과 같이 HttpServletRequest 객체에서 getRemoteAddr() 메소드를 호출하여 아이피를 출력해보니 클라이언트의 아이피가 아닌 다른 아이피가 잡히는겁니다. 정황상 host 에서 컨테이너로 포트포워딩을 하다보니 본래 클라이언트의 아이피가 아니라 Docker 네트워크의 아이피가 나온 것 같습니다. 혹시라도 포워딩 헤더가 있을까 하여 헤더를 까봤지만 헤더에 있지도 않더라구요.. GPT에게 자문을 구해보니 두가지를 추천해주더군요. 1. container의 network를 host로 설정하라 이건 알아보니 리눅스에서만 작동하는거랍니다 제 어플리케이션은 리눅스에 설치될수도 있고 윈도우에 설치될 수도 있는데 말이죠.. 2. Nginx 같은 프록시 서버를 둬라 호스트에 프록시를 둬서 본래의 아이피를 헤더에 추가하든 어떻게든 해서 본래의 아이피를 스프링에 전달해주라는 말로 이해했습니다. 플랫폼 독립적으로 설치하기 위해서 Docker를 채용했는데 호스트에 추가적인 서버를 설치하라뇨… 이것도 좀 아닌 것 같습니다.. 막막합니다… 괜히 Docker 들여왔나 싶기도 하고, 보안 인증때문에 이 기능을 지원 안할수도 없고.. 도와주십쇼..!

개발자

#docker

#spring-boot

답변 1

댓글 5

조회 1,258

일 년 전 · 손우진 님의 새로운 답변

Spring Cloud Config 서버에 관하여 질문이 있습니다.

MSA 아키텍처에서는 대개 환경 정보를 일괄적으로 관리하는 서버를 두는 것으로 알고 있습니다.(Cloud Native 12 Factors) 그 중에서 Spring에서 사용할 수 있는 것은 Spring Cloud Config Server입니다. 해당 컨피그 서버를 사용하면 효율적으로 application.yml를 관리할 수 있죠.. 그런데 여기까지는 좋습니다만 제 지식으로는 해결할 수 없는 문제가 발생했습니다. Github Actions CI/CD에서 빌드를 할 때 application.yml이 없어도 되지만 빌드 검증을 위해선 필요합니다. 그런데 이때 Config Server를 외부 포트로 열어놓고 Github actions 접속시 비보안적이지 않나요..? 그래서 Spring Basic Auth를 사용하여 접근하려 했지만 왜인지 모르게 오류가 계속 뜹니다. (몇 시간 동안 해봤지만 안됩니다.. 충돌 때문인지는 모르겠지만 그냥 Security 관련 Bean이 설정이 안되더라구요..) 관련해서 AWS를 활용하여 일회성 인증을 하는 방법이 있다고 합니다만.. 이것만이 방법은 아닐 거 같습니다. 에이 몰라! Config Server 외부 포트 열어놓는건 위험하니까 그냥 Github actions secrets에도 application.yml를 다 넣고 빌드 검증해보고, 실제 배포때는 Dockerfile로 프로파일 설정해서 Config Server에서 불러와야지! 라고 하기에는 그럼 application.yml이 수정될 때 마다 github actions, config server 둘다에서 수정해줘야 할 것 같습니다… 관련하여 조언 주시면 감사하겠습니다.

개발자

#spring

#spring-cloud

#spring-cloud-config

#msa

답변 1

댓글 0

조회 80

일 년 전 · 이승훈 님의 새로운 댓글

도커 세팅 후 docker-compose과 data폴더 깃에 푸시 해도 되나요?

현재 도커 세팅 후 pgAdmin4를 사용해서 DB생성까지 했습니다. 그런데 말입니다. 도커에 관련 파일과 폴더는 어떻게 관리를 해야되나요? .env 파일 처럼 gotignore에서 제외시켜야 되는건가요? 아니면 다른 방식으로 푸시를 진행을 해야 되는건가요?

개발자

#docker-desktop

#prisma

#pgadmin

답변 2

댓글 2

조회 67

일 년 전 · 이정윤 님의 새로운 댓글

개발용 Docker 컨테이너 내부에서 spring boot 외 다른 프로세스 돌리기

Gitlab과 유사하게 작동하는 Git을 사용한 CI 웹 어플리케이션을 만들고 있습니다. API 서버는 spring boot + JGit을 사용하여 구축하여 웹 서버를 띄우고, 개발자가 CI 서버에 접근하여 git clone 또는 git push 를 해야 하기 때문에 ssh 서버를 띄워서 백엔드에서 총 두개의 서버를 구동시켜야 하는 상황입니다. 두 서버는 서로의 정보를 필요로 하기 때문에 파일 시스템을 공유해야하구요. 설치형 어플리케이션이기 때문에 docker를 사용하여 플랫폼 독립적으로 설치를 할 수 있게 하려고 했어요. 근데 이 서버를 두개 띄우는 시나리오가, Production 환경에서는 spring boot 서버를 jar 파일로 만들어서 파일로 나오게 된다면, 따로 스크립트 파일을 작성해서 ssh 서버와 spring boot 서버를 한 컨테이너에서 실행시키게 할 수는 있을 것 같습니다. 하지만 Intellij를 사용하는 개발환경에서는 한 컨테이너로 하기가 좀 어렵더라구요 지금까지 시도해본것은 1. 한 컨테이너에서 ssh 서버를 띄운 후 Intellij 원격 개발 기능을 사용하여 컨테이너에 ssh로 붙는다. -> Intellij에서 코드 작성 속도가 너무 느립니다. 그리고 버그가 너무 많아서 못쓸 지경이예요. 2. Intellij Docker 플러그인을 사용한다. Intellij 에서 이미지를 지정해서 spring boot를 로컬에서 돌리는 것처럼 만들어주는것이 있더라구요. -> 이 방법으로는 한 컨테이너에 spring boot 하나만 돌릴 수 있는 것 같았습니다. (아니라면 알려주세요 ㅠㅠ) 2-1. 컨테이너를 ssh 서버용, spring boot 개발 서버용 두개를 작성하여 Intellij Docker 플러그인을 사용하여 spring boot 개발 서버를 돌리고 둘을 Volume으로 공유한다. -> 이 방법이 가장 정석인 것 같긴 한데, ssh 서버에서 생성한 파일과 spring boot 에서 생성한 파일 간에 접근 권한 이슈가 있을 것 같아서 이렇게 하는게 맞나 싶습니다. 이렇게 한다면 Production 환경과 다를 수 있으니 Production도 개발환경과 유사하게 두 컨테이너로 운용해야겠지요? 3. (아직 시도는 안해봤지만) 개발 환경 자체를 리눅스 데스크탑을 사용하여 개발한다. (or wsl을 사용한다) -> 가장 간단한 방법이겠지만 이것 또한 Docker를 사용하려는 Production 과 환경이 다를 수 있어서 고민이 됩니다. 제가 원하는건 딱 이거인 것 같아요. Intellij에서 실행버튼 하나를 딱 누르면 ssh 서버도 띄워지고, spring boot 개발서버도 띄워지고. 여기까지가 제 고민입니다.. 어떻게 개발 환경을 꾸리는게 좋을까요…? 아니면 제가 미처 생각하지 못한 방법이 있으면 말씀해주시면 감사드리겠습니다. 긴 글 읽어주셔서 감사합니다. Docker 라는걸 이제 막 사용하기 시작해서 모르는 것 투성입니다. 도움 부탁 드려요…!

개발자

#docker

#spring-boot

#intellij

답변 1

댓글 2

조회 180

일 년 전 · lee 님의 질문

Kubernetes 클러스터 구성

안녕하세요 쿠버네티스 공부하고 있는 중에 질문드립니다. docker desktop에 있는 쿠버네티스를 사용했고 도커 데스크탑에 있는 이미지를 사용해서 간단하게 리눅스 이미지를 가지고 구성을 했습니다. docker desktop에서 window container로 변경 후 데스크탑에 있는 리눅스 이미지와 윈도우 이미지를 두 개 다 사용하여 구성을 하고 싶은데 찾아보니까 docker desktop에는 한 개의 노드만 존재하기 때문에 불가능하다고 합니다. kubeadm이나 minikube 같은 경우도 가상머신이나 실제 컴퓨터를 가지고 구성 하는 것 같은데 이럴 경우에 매니저 컨트롤러가 리눅스 기반이고 가상머신이다 보니 도커 데스크탑에 있는 이미지를 사용 못할 뿐만 아니라 윈도우 이미지를 사용 못하는 것 같은데 도커 허브에서 다운 받는 방법 말고 로컬에 있는 이미지를 사용하는 방법이 있을까요?

개발자

#kubernetes

#docker

#docker-desktop

#linux

#window

답변 0

댓글 0

조회 74

일 년 전 · 김주미 님의 새로운 답변

맥 개발환경 설정하실줄 아시는분 !!ㅠ

맥개발환경셋팅할려고 이클립스 톰캣 docker sqldeveloper 홈브류? 설치하는대 자꾸 막혀서요 ㅠ 인터넷따라하는대도 자료들이옛날이라그런지 안되서요

개발자

#eclipse

#sqldeveloper

#docker

답변 1

댓글 0

보충이 필요해요 2

조회 47