본문 바로가기

분류 전체보기48

Docker 이미지 재사용에 관하여 - 1 시작하기최근 꽤 흥미로운 이슈 하나가 프론트엔드에 나타났다. 바로 빌드된 Docker 이미지의 재사용에 관한 이야기였다. 현재 프로젝트들은 여러 개발 단계를 거쳐 배포로 이어지는데, 이 단계마다 이미지를 빌드하고 사용하는 방식으로 활용되고 있었다. 생각해보면 참 이상한 일이다. Docker image를 빌드하는 이유 중 하나는, 애초에 같은 이미지를 재사용하여 여러 컨테이너로 실행시킬 수 있다는 부분이다. 그래. 재사용. 이 핵심 기능에 대하여 지금 제대로 활용되고 있는가에 대해 생각해본다면, 당연히 아니오였다. 우리는 매번 새로운 빌드로 만들어진 이미지를 배포하고 있었고, 무언가 거대한 변경사항이 있는 것이 아닌, 주입되는 환경변수 몇 글자를 바꾸기 위해 빌드를 위한 리소스와 빌드 시간을 낭비하고 있었.. 2024. 11. 6.
4. Docker + Jenkins + Github + Grafana + Next14 시작하기...이번에는 Nginx를 도커로 말아 프록시 서버로 동작할 수 있게 할 계획이다. Nginx와 Next14를 1:1로 사용할 예정이기도 하고, 기존에 세팅되어 있는 Nginx는 더 이상 사용하지 않을 것이기 때문에 시스템 상에서 Nginx를 내리고 새로운 Docker Nginx 프록시 서버를 올릴 필요가 있다. 만약 처음부터 할 예정이라면 불필요하겠지만, 필자처럼 이미 Linux 자체에 Nginx를 설치해둔 상태라면 도커 컨테이너로 전환하기 위해 내려두자. Nginx의 상태를 확인하고 내리는 명령어는 아래와 같다.sudo systemctl status nginx// 끄기sudo systemctl stop nginx 추가로 Jenkinsfile을 수정하기 전에 아래의 network 설정도 같이 진.. 2024. 10. 26.
3. Docker + Jenkins + Github + Grafana + Next14 Jenkins에 Docker 설치 전에...Grafana 관련으로 약간의 수정사항이 발생했다. 아무래도 도커 컨테이너를 기반으로 운영을 할 예정이다 보니, Grafana 또한 Docker로 관리하는 것이 좋을 것 같다는 판단이 들었다. 때문에 기존의 Grafana를 제거하고 Docker Grafana를 설치하기로 진행했다.기존 Grafana 삭제sudo apt-get remove grafanasudo apt-get purge grafanasudo rm -rf /etc/grafanasudo rm -rf /var/lib/grafanasudo rm -rf /usr/share/grafana Docker Grafana 설치docker run -d -p 3000:3000 --name=grafana grafana/g.. 2024. 10. 22.
Next14 랜더링 방식 고민해볼 이슈...최근 있었던 프로젝트의 랜더링 방식 관련으로 고민을 해볼 겸 한 번 정리를 해보려고 한다. 이슈 사항은 다음과 같다. 페이지가 검색엔진에 노출이 되고 빠르게 로드될 수 있도록 SSG로 운영하던 프로젝트가 있었는데, 몇가지 변경사항으로 인해 다이나믹 라우팅을 수행해야만 했다. 페이지 자체는 수가 많지 않을 것으로 예상하지만, 일정 기간동안만 존재하는 특성을 가지고 있기 때문에, 해당 기간이 지나면 페이지에 접근하게 둬서는 안된다. 문제는 SSG가 빌드 시점에 페이지들이 생성되는 특성으로 인해 해당 기간이 지나더라도 페이지가 여전히 접근될 수 있다는 점이다. 어떻게 하면 최대한 공수를 줄이면서 SEO를 챙길 수 있는지 생각해보기 위해 Next14에서 제공하는 네 가지 랜더링 방식에 대해 여.. 2024. 10. 14.
Hostinger 플랜 교체 서버 관련 비용 문제로 인한 주저리...비용의 딜레마현재 필자는 Hostinger에서 VPS 서버를 구독하고 있다. AWS의 클라우드 서버를 구입해 사용하면 좋겠지만, 이 문제의 종량제 가격 책정으로 인해 생각보다 많은 사람들이 실수로 비용 폭탄을 맞는 후기가 꽤 올라왔다. 그냥 개인적으로 여러 기술 스택을 공부하는데 사용하고자 하는 목적인데, 이런 외부적 요인으로 인해 괜한 스트레스를 받고 싶지는 않았던 만큼, 그냥 정기적으로 저렴한 곳에서 구독 비용을 내고 사용하고자 Hostinger에서 할인을 받고 서버를 빌렸다. 하지만 문제가 발생했다. hostinger에서 할인 비용도 거의 끝이 났고, 다음달 갱신이 이뤄지는 상황에서, 내가 지불해야 할 금액은 21만 5천원 정도. 1년 단위의 구독인 만큼 월 .. 2024. 10. 13.
2. Docker + Jenkins + Github + Grafana + Next14 해당 포스트는 Docker Jenkins 내부에서 Docker를 사용할 수 있는 세팅이 누락되어 있습니다. 해당 세팅이 필요한 경우 3번 포스트를 먼저 참고한 뒤 2번을 읽어주시기 바랍니다이어서...Dockerfile을 작성하고 로컬에서 정상적으로 동작하는 것을 확인했다. 해당 도커 이미지는 서버에 올릴 때도 동일한 컨테이너로 생성되어 동작하기 때문에 로컬과 서버에서 서로 다른 환경 문제로 오류가 발생하는지의 여부를 미리 파악할 수 있다. 이제 Docker를 기반으로 Jenkins가 동작하도록 세팅을 해보도록 하겠다. Docker + Jenkins일전에 포스팅했던 Docker 세팅 과정에 Jenkins를 설치하는 방법에 대해서 다뤄두었다. 당시에 세팅해뒀던 Jenkins를 다시 systemctl로 활성화.. 2024. 10. 9.
728x90
반응형