전체 글
-
[Docker] Section 05, 06 - Docker Compose로 여러 컨테이너를 한 번에 관리하기Web Programming/Docker 2026. 8. 5. 16:12
지금까지의 강의에서는 Docker의 컨테이너를 한 번에 한 개씩만 띄우는 내용만 다뤘다.하지만 컨테이너를 통해 각각의 환경을 독립화하는 것이 장점인 Docker를 사용하는데 컨테이너를 하나만 띄울리는 만무하지.이번 두 섹션에서는 Docker의 compose를 활용해 한 번에 여러 개의 컨테이너를 띄우고 관리하는 방법을 배웠다.1. Docker ComposeDocker Compose는 여러 개의 컨테이너를 한 개의 '서비스'로 묶어 정의하고 구성해서 관리할 수 있게 도와주는 도구다.이 도구는 YAML 구성 파일에서 서비스, 네트워크 볼륨을 정의하고 쉽게 관리할 수 있도록 하여 전체 애플리케이션 스택의 제어를 간소화하여 효율적인 개발 배포 환경을 구현하는 데 핵심적인 역할을 한다.1.1. Docker Com..
-
[Docker] Section 04 - Dockerfile로 이미지 만들기Web Programming/Docker 2026. 7. 31. 17:04
지금까지는 Dockerhub에서 이미 만들어진 이미지를 pull 해서 컨테이너를 띄우는 실습만 해왔다.하지만 이제 실무에서 Docker를 사용한다고 하면 이미 만들어진 이미지 또한 사용하겠지만, 아마 팀이 개발한 서비스를 배포할 때 주로 쓰지 않겠는가.그렇다면 우리의 서비스를 이미지로 만들어서 컨테이너에 띄워야 하는데, 그것을 위해 우리는 Dockerfile을 사용할 수 있다. 1. Dockerfile Dockerfile은 Docker에서 사용할 수 있는 이미지를 생성하기 위한 설정파일, 즉 스크립트 파일이다.명령어들의 나열으로 해당 이미지가 어떤 이미지를 기반으로 하는지, 어떤 것들을 어떤 순서대로 실행할지 지정할 수 있다. 1-1. Dockerfile의 특징·장점(1) 이미지 파악 가능어떤 Docke..
-
[Docker] Section 03 - 도커 볼륨을 활용해 데이터 유실 방지하기Web Programming/Docker 2026. 7. 29. 17:10
Docker를 이용해 컨테이너를 만들고, 특정 프로그램을 이미지로 만들어 실행시키는 것까지는 잘 알겠다.그런데 배포라는게 그 프로그램을 실행시키는 것에서 끝나지 않는다. 사용하다 보면 버그가 있어 수정을 하거나 기능을 추가하기도 하니까.하지만 Docker는 해당 이미지를 '수정'하는 것이 아니라 수정이나 기능 추가를 포함하여 '새로운 이미지'를 만든다.이 경우 해당 이미지가 갖고 있던 데이터도 덩달아 초기화된다고 한다. 배포한 이미지가 데이터베이스를 둬서 별도로 데이터가 관리되는 웹 사이트의 프론트엔드 클라이언트라면 문제가 없겠다만만약 데이터베이스를 Docker로 배포했는데, 이미지를 새로 만들어 데이터가 모두 사라진다면?실제 서비스 중인 데이터가 날아가는 것은 매우 큰 손실을 입힐 것이다. 이렇게 영속..
-
[Docker] Section 02 - Docker로 nginx를 설치하고 실행해보자.Web Programming/Docker 2026. 7. 22. 17:04
Section 02에서는 nginx 이미지를 가지고 흐름을 익혀나가는 섹션이었다.강의에서는 CLI 만 사용했는데, CLI에서의 동작을 더 쉽게 파악하기 위해 iTerm과 Docker Desktop을 동시에 사용해봤다. 이미지를 조작하는 방법 - 컨테이너를 조작하는 방법 - 컨테이너 내부에 접속하는 방법 순으로 일련의 흐름을 정리해보고자 한다. 이미지 조작명령어가 입력되면 이미지는 Docker Hub에서 다운로드된다. (npm과 homebrew를 떠올려보자)필요한 이미지가 존재하는지 궁금하다면 Docker hub에서 검색해보면 공식에서 배포하는 이미지들도 있으니 참고해보자. Docker Hub Container Image Library | App ContainerizationSoftware supply..
-
[Docker] Section 01 - Docker 기본 개념Web Programming/Docker 2026. 7. 21. 16:23
▼ 이 TIL은 아래 강의를 수강한 것을 바탕으로 작성하고 있습니다. 비전공자도 이해할 수 있는 Docker 입문/실전| JSCODE 박재성 - 인프런 강의현재 평점 4.9점 수강생 14,557명인 강의를 만나보세요. 비전공자 입장에서도 쉽게 이해할 수 있고, 실전에서 바로 적용 가능한 Docker 입문/실전 강의를 만들어봤습니다! Docker 기본 개념, Spring Boot를www.inflearn.com 1. Docker를 왜 배우는 걸까?이식성 : 특정 프로그램을 다른 곳으로 쉽게 옮겨서 설치 및 실행할 수 있는 특성 강의에서는 '이식성' 하나만 기억하라고 했다. 그럼 '이식성'을 나의 글로 설명해보자. 학부생 시절, 지금처럼 macOS의 보급이 이뤄지지 않아 대부분의 실습이 windows 환경에서..
-
[Docker] TIL 개요Web Programming/Docker 2026. 7. 20. 17:01
인턴으로 근무하며 프론트엔드 배포시 docker를 사용했었는데, 그냥 docker 환경에서 배포가 잘 되는지 확인하는 용도로만 사용해왔다.그래서 다시 취준을 하는 김에 docker와 쿠버네티스를 배워보면 좋겠다는 생각이 들었다.인프런에서 강의를 구매했고, 이 강의를 들으며 학습해나가는 기록을 남기고자 한다. 비전공자도 이해할 수 있는 Docker 입문/실전 비전공자도 이해할 수 있는 Docker 입문/실전| JSCODE 박재성 - 인프런 강의현재 평점 4.9점 수강생 14,555명인 강의를 만나보세요. 비전공자 입장에서도 쉽게 이해할 수 있고, 실전에서 바로 적용 가능한 Docker 입문/실전 강의를 만들어봤습니다! Docker 기본 개념, Spring Boot를www.inflearn.com 인프런에서..
-
[BOJ / C++] 2343번 : 기타 레슨Study (etc)/Problem Solving 2026. 1. 6. 17:09
문제 링크https://www.acmicpc.net/problem/2343문제강토는 자신의 기타 강의 동영상을 블루레이로 만들어 판매하려고 한다. 블루레이에는 총 N개의 강의가 들어가는데, 블루레이를 녹화할 때, 강의의 순서가 바뀌면 안 된다. 순서가 뒤바뀌는 경우에는 강의의 흐름이 끊겨, 학생들이 대혼란에 빠질 수 있기 때문이다. 즉, i번 강의와 j번 강의를 같은 블루레이에 녹화하려면 i와 j 사이의 모든 강의도 같은 블루레이에 녹화해야 한다.강토는 이 블루레이가 얼마나 팔릴지 아직 알 수 없기 때문에, 블루레이의 개수를 가급적 줄이려고 한다. 오랜 고민 끝에 강토는 M개의 블루레이에 모든 기타 강의 동영상을 녹화하기로 했다. 이때, 블루레이의 크기(녹화 가능한 길이)를 최소로 하려고 한다. 단, M..
-
[TanStack Query] useInfiniteQuery를 활용한 무한스크롤Study (etc)/Troubleshooting 2025. 12. 5. 18:16
이 트러블슈팅은 롤페 프로젝트에서 수행되었습니다. GitHub - Team-Exiters/Roll-Pe_FEContribute to Team-Exiters/Roll-Pe_FE development by creating an account on GitHub.github.com 문제 상황 개요❓ 문제 상황'초대 받은 롤페' 페이지와 '내 롤페' 페이지에서 수많은 롤페 리스트를 그대로 제공해 사용성이 저하됨 위 이미지는 '초대 받은 롤페' 페이지와 '내 롤페' 페이지의 Figma 디자인이다.백엔드 팀원들이 기존 MVP 개발 과정에서는 UI만 확인하고 페이지네이션이 없는 전체 리스트 제공만 구현했었고, 따라서 기존 MVP에서는 20개든 40개든 모든 리스트를 한 번에 불러와 제공하고 있었다. 이는 롤페 데이터..