728x90

ssh config, shell script로 배포 시간 1/10으로 단축하기

 

 

0. Intro

생성형 AI로 일적으로나 생활적으로 도움을 많이 받고 있는 요즘, 업무 차원에서 개발 속도를 어떻게 하면 더욱 향상시킬까 하는 고민이 많은데요.

하지만 때로는 우리가 선택한 개발 및 배포 환경이 개발 속도를 방해하곤 합니다. 저 역시 최근에 그런 경험을 했습니다.

1. 기존 배포 방식의 단점

이전에 저는 docker + GitHub Actions + ECS + ECR 조합으로 배포 파이프라인을 구축했습니다. 이 방식은 코드를 푸시하는 순간 자동으로 배포가 이루어지고 github에서 종합적으로 관리할 수 있다는 장점이 있었죠. 하지만 실제로 develop 브랜치에 푸시되고 github action으로 docker 이미지가 빌드되고, ECS의 Task가 생성될 때까지, 즉, 서버에 변경사항이 반영되기까지 무려 5분이나 걸렸습니다.

 

처음에는 '자동화됐으니 괜찮아'라고 생각했지만, 점점 이 긴 대기 시간(코드를 변경하고 서버에 반영되는 시간)이 답답하게 느껴졌습니다. 특히 릴리즈 환경이 아니라 소규모로 개발하는 경우에는 이 5분의 대기 시간이 개발 속도에 상당한 영향을 미쳤습니다. 작은 변경사항 하나 를 커밋하고 테스트하려고 해도 커피 한 잔 마시고 올 시간이 있었으니까요.

물론 여러 명이 협업할 때는 이런 자동화된 파이프라인이 분명한 장점이 있습니다. 하지만 개인 프로젝트나 빠른 개발이 필요한 상황에서는 오히려 족쇄가 되는 느낌이었습니다.

2. 새로운 배포 방식: ssh config와 shell script의 활용

이러한 문제를 해결하기 위해 저는 좀 더 단순하면서도 빠른 배포 방식을 고안했습니다. 바로 ssh config와 shell script를 활용한 방법입니다.

새로운 방식의 흐름은 다음과 같습니다:

1. 로컬 환경에서 Docker 이미지를 빌드합니다. (I love M2 Pro 맥북❤️)

2. 빌드된 이미지를 Docker hub에 푸시합니다.

3. ssh를 통해 AWS EC2 서버에 원격으로 접속합니다.

4. 서버에서 최신 Docker 이미지를 풀(pull)받습니다.

5. 풀받은 이미지로 컨테이너를 실행합니다.

이 모든 과정을 shell script로 자동화했더니, 놀랍게도 전체 배포 시간이 28초 정도로 줄어들었습니다! 기존 방식의 약 5분(300초)에서 1/10 수준으로 단축된 것이죠.

28초 ㅁㅊㄷ..!

 

3. 결론

개발 환경과 배포 방식은 항상 트레이드오프가 있습니다. 팀 규모, 프로젝트의 성격, 개발 단계 등에 따라 최적의 방식이 달라질 수 있습니다.
이번 경험을 통해 저는 상황에 맞는 유연한 접근이 중요하다는 것을 깨달았습니다. 때로는 '최신' 기술 스택보다 단순하지만 효율적인 방식이 더 나을 수 있다는 것도 알게 되었고요.

여러분도 현재 사용 중인 개발 및 배포 프로세스를 한 번 점검해보는 것은 어떨까요? 어쩌면 작은 변화로 큰 효율을 얻을 수 있을지도 모릅니다.

읽어주셔서 감사합니다 🙇‍♂️

 

 

728x90

2024년 인기있는 60가지 AI 도구들: AI 마법사가 되어보자!

 

 

참고
https://x.com/eyishazyer/status/1807732216484536399

안녕하세요, 여러분! 👋 오늘은 제가 트위터를 구경하다 우연히 발견한 신기하고 유용한 정보를 여러분과 공유하려고 해요. 2024년에 인기있는 60가지 AI 도구들이에요! 🚀💼 저도 지금 하나씩 사용해보고 있는 중인데, 몰랐던 도구들이 진짜 많기도하고 신기해서 여러분께 꼭 알려드리고 싶었어요! (제가 사용해본 것 형광펜 표시해볼게요)

1. 아이디어 발상 도구들 💡

Claude, ChatGPT, Gemini, Bing Chat, Perplexity 같은 AI 챗봇들이 아이디어 뱅크 역할을 해줘요! 상상력의 한계를 넓혀보세요!

2. 웹사이트 제작 도구들 🌐

@wegic_ai, Unicorn, 10Web, Framer, Dora로 멋진 웹사이트를 뚝딱 만들 수 있어요. 코딩 실력이 없어도 괜찮아요! 

아래 페이지가 Framer로 무료로 템플릿이 공개된 것인데 퀄리티가 좋네요! (다만 코드 수정을 하는 방법은 저도 더 찾아봐야 겠어요!!)
https://atomic-template.framer.website/

 

Atomic – Creative Business Landind Page Template for Framer

Atomic is the Framer template made for all type of businesses seeking to showcase their prowess in the most visually stunning way. Atomic provides a seamless canvas for your services, ensuring that your work always speaks volumes and impress your clients.

atomic-template.framer.website

 

3. 글쓰기 도구들 ✍️

Rytr, Jasper, Longshot, Textblaze, Copymate가 여러분의 글쓰기를 도와줄 거예요. 작가의 고민을 덜어주는 마법 같은 도구들이죠!

4. 회의 도구들 🗣️

Tldv, Krisp, Otter, Fathom, Airgram으로 회의를 더 스마트하게! 노트 정리부터 음성 인식까지 척척 해결해요.

5. 챗봇 도구들 🤖

SiteGPT, Chatbase, Chatsimple, CustomGPT, Mutual.info로 여러분만의 AI 비서를 만들어보세요!

6. 자동화 도구들 ⚙️

Make (Form, Slack 등 다양한 워크플로우 생성), Levity, Zapier, Xembly, Bardeen으로 반복적인 작업은 AI에게 맡기고 창의적인 일에 집중하세요!

7. UI/UX 도구들 🎨

Figma(곧 AI 기능 도입), Uizard, UiMagic, InstantAI, Galileo AI, Photoshop으로 멋진 디자인을 뚝딱!

8. 이미지 생성 도구들 🖼️

Leap AI, Astira AI, Midjourney, Bing create, Stable Diffusion으로 상상 속 이미지를 현실로!

9. 비디오 제작 도구들 🎥

Eightify, InVideo, HeyGen, Runway, Morphstudio.xyz로 고품질 영상을 만들어보세요!

10. 디자인 도구들 🎭

Canva, Flair AI, Clipdrop, Booth AI, Autodraw로 누구나 디자이너가 될 수 있어요!

11. 마케팅 도구들 📣

Pencil, Ai-Ads, AdCopy, Simplified, AdCreative로 효과적인 캠페인을 만들어보세요!

12. 트위터 도구들 🐦

Typefully, Tweetlify, Postwise, Tribescaler, TweetHunter로 트위터를 활성화해보세요!

요즘 이 도구들을 하나씩 사용해보면서 매일 새로운 인사이트를 발견하고 있어요. ("AI로 이런 기능도 만들 수 있구나!, 어떻게 개발했지..?") 여러분도 한번 도전해보세요! 처음엔 어색할 수 있지만, 조금씩 익숙해지다 보면 어느새 AI 마법사가 되어 있을 거예요. 😉🧙‍♂️

읽어주셔서 감사합니다 🙇‍♂️

728x90

[Cursor IDE + Claude 3.5 Sonnet]: VS Code IDE + GitHub Copilot에서 갈아탄 후기

Cursor

 

1. Intro

안녕하세요, 여러분! 오늘은 제가 Cursor IDE + Claude 3.5 Sonnet으로 개발 도구를 변경한 후기에 대해 이야기해볼까 해요. 🚀

저는 그동안 Visual Studio Code와 GitHub Copilot을 사용해왔어요. 꽤 만족하면서 쓰고 있었죠. 그런데 오늘 일하다가 개발자로 일하는 친척에게서 연락이 왔어요! 😮

 

 

2. Cursor IDE 사용해보기

https://www.cursor.com/

https://claude.ai/new

코딩 입문 때부터 계속 쓰던 VS Code에서 벗어나기가 두려웠지만, 한 번 사용해보자는 실험 정신도 있었고 열정적인 추천에 솔깃해서 바로 구독하고 설치해봤는요. 일하다 말고 툴을 바꾸는 게 좀 도전적이라고 생각했지만.. 근데 VS code의 기능과 UI/UX가 매우 비슷해서 이질감을 못느꼈어요. 코드 생성형 AI 모델 선택도 가능하더라고요. Claude-3.5도 지원이 되어서 최근에 핫한 이 모델을 선택해서 쓰고 있어요.

 

3. 좋았던 점

명령어 생성 및 터미널 디버깅

기존에는 에러가 발생하면 터미널 내용을 복사해서 구글에 검색하곤 했는데, [Option + D] 단축키를 통해 터미널을 디버깅하고 설명해주는 게 편했어요.

 

터미널에 커서를 옮기고 [Command + K]를 누르면 아래 채팅이 뜨고 원하는 명령어를 입력하고 Enter를 누르면 터미널에 명령어가 작성됨.

 

변경하고 싶은 코드만 수정 가능, IDE에서 직접 변경 가능

기존에는 변경하고 싶은 코드를 gpt 복붙하곤 했는데 IDE에서 직접 하니까 편했어요. 그리고 변경된 코드를 보고 번의 클릭으로 반영할 것인지, 취소할 것인지 선택할 수도 있어서 좋았어요. 그리고 최근 출시된 Claude-3.5라서 오류가 생기는 느낌도 있었어요. 기능 덕분에 생산성이 폭발하는 느낌이에요 💥..!

 

변경하고 싶은 코드 부분을 드래고하고 [Command + L]를 누르면, 채팅 사이드바가 뜬다(코드가 입력됨).

 

코드가 결과로 나오고, 상단의 [Apply] 클릭하면 수정될 부분 보여주고, [Accept]/[Reject]를 선택할 수 있다.

 

4. 마무리

VS Code와 GitHub Copilot도 아직도 사람들이 많이 사용하는 유용한 툴이지만, Cursor IDE와 Claude 3.5 Sonnet 조합은 꽤 신선한 같아요. 앞으로 계속 사용할 것 같네요. 여러분도 한번 시도해보는 건 어떨까요?(+구독료는 덤) 새로운 경험에 푹 빠질지도 몰라요! 😉 

 

Claude...! 너란 녀석

 

여러분은 어떤 도구를 쓰고 있나요? 각 도구의 좋았던 경험을 공유해주시면 정말 좋을 것 같아요! 자, 이제 저는 Cursor와 함께 코딩 여정을 시작하러 가볼게요. 다들 즐거운 코딩하세요! 읽어주셔서 감사합니다! 👋 

+ Recent posts