"꾸준하고 완벽한 한 걸음"

Dev 14

[Docker] 컨테이너 entrypoint가 bash쉘 일 때 attach, exec 사용 시 exit의 영향

목차Docker 컨테이너의 ENTRYPOINT가 /bin/bash 일 때docker attach로 진입한 후 exit 명령어 실행docker exec로 진입한 후 exit 명령어 실행attach, exec 비교 정리서론Docker 컨테이너 내부에 접속할 때 docker attach와 docker exec 두 명령어를 사용할 수 있습니다.이 글에서는 도커 컨테이너의 entrypoint가 bash쉘(/bin/bash)일 때, attach와 exec 명령을 사용해 내부에 진입 후 exit 명령어를 실행했을 때 컨테이너 상태가 어떻게 변하는지 살펴보겠습니다.Docker 컨테이너의 ENTRYPOINT가 /bin/bash 일 때컨테이너의 ENTRYPOINT가 /bin/bash 라는 것은, 컨테이너가 실행될 때 기본..

Dev/Docker 2025.04.09

[시작하세요! 도커/쿠버네티스] 01장 도커란?

목차1.1 가상 머신과 도커 컨테이너1.2 도커를 시작해야 하는 이유1.2.1 애플리케이션의 개발과 배포가 편해집니다.1.2.2 여러 애플리케이션의 독립성과 확장성이 높아집니다.1.3 도커 엔진 설치1.3.1 도커 엔진의 종류 및 버전1.3.2 리눅스 도커 엔진 설치1.3.3 윈도우, 맥 OS에 도커 설치1.3.4 리눅스 환경에 도커 마련하기01 도커란?도커는 애플리케이션을 컨테이너로서 사용할 수 있게 만들어진 Go 언어 기반의 오픈소스 프로젝트다.리눅스 컨테이너에 여러 기능을 추가해 만들어졌다.가상 머신과 달리 성능의 손실이 거의 없다.일반적으로 도커는 도커 엔진 또는 도커와 관련된 모든 프로젝트를 의미한다. 💡도커 엔진(Docker Engine)이란?컨테이너를 생성하고 관리하는 주체 도커의 여러 프..

Dev/Docker 2025.03.25

[시작하세요! 도커/쿠버네티스] 서문

도커의 한계와 여러 컨테이너 오케스트레이션 툴의 등장💡컨테이너 오케스트레이션 툴이란?여러 컨테이너를 효율적으로 배포, 관리, 확장 및 네트워킹하는 자동화 도구 2016년, 도커만으로는 대규모 운영 환경을 구축할 수 없었다.이를 해결하고자 다양한 컨테이너 오케스트레이션 툴이 등장(랜처, 스웜모드 등)했다.  쿠버네티스는 사실상 표준그럼에도 불구하고 결국 클라우드 및 인프라 업계에서는 쿠버네티스가 사실상 표준으로 사용되고 있다.✅도커 다음으로는 쿠버네티스를 배워보자!  쿠버네티스의 높은 러닝커브다른 한편으로는 쿠버네티스는 컨테이너 기술의 진입 장벽을 높인 것 같다.쿠버네티스는 굉장히 방대한 프로젝트이므로 책에서 모든 것을 설명할 수 없다. 공식문서 또는 구글링 등을 활용하자  Github 및 예제 파일ht..

Dev/Docker 2025.03.24

[Notion] 데이터베이스의 모든 최하위 항목 수를 세는 방법(for 노션으로 블로그 만들기)

오늘은 Notion의 데이터베이스 내 모든 최하위 항목 수를 세는 기능을 만들어 보겠습니다. 최하위 항목이란?데이터베이스에서 하위 항목을 가지지 않는 페이지를 의미합니다. 즉 다음 사진과 같이 계층형 구조에서 더 이상 등록된 하위 항목이 없는 페이지를 의미합니다.위 데이터베이스에 존재하는 전체 문서의 수는 총 6개입니다.이 중 하위 항목이 없는 최하위 항목은 총 3개(문서5, 문서3, 문서6)입니다. 이제 ‘수식’과 ‘롤업’을 양방향 참조로 구성해 모든 최하위 항목 수를 계산하는 방법에 소개하겠습니다.empty()로 최하위 항목 표시하기먼저 해당 문서가 최하위 항목인지 파악하기 위한 수식부터 작성해보겠습니다.하위 항목 수라는 이름의 수식 속성을 추가해주고 다음 수식을 입력합니다.if(empty(prop(..

Dev 2025.02.05

[EC2] AWS EC2 탄력적(Elastic) IP 등록

탄력적 IP란?탄력적 IP(Elastic IP)는 AWS에서 제공하는 고정된 퍼블릭 IP 주소입니다. 이는 EC2 인스턴스가 고정된 IP 주소를 유지하도록 돕는 서비스입니다. 일반적으로 EC2 인스턴스를 중지하거나 재시작하면 퍼블릭 IP가 변경될 수 있지만, 탄력적 IP를 사용하면 항상 동일한 IP 주소를 사용할 수 있습니다.AWS 프리 티어를 사용하는 경우, 탄력적 IP를 인스턴스에 연결하여 고정된 퍼블릭 IP를 무료로 사용할 수 있습니다.만약, 인스턴스에 연결되지 않거나 사용하지 않을 경우 비용이 발생할 수 있으므로 유의해야 합니다. 탄력적 IP 할당 및 인스턴스 연결 방법좌측의 메뉴에서 "탄력적 IP"를 클릭해 이동합니다.화면 우측 "탄력적 IP 주소 할당"을 클릭해 새 IP를 할당받을 수 있습니다..

Dev/AWS 2024.12.03

[Route 53] AWS 호스팅 영역 삭제 및 기타 레코드 삭제

AWS Route 53은 도메인의 DNS(Domain Name System) 정보를 관리하는 서비스입니다.도메인과 연결된 웹사이트, 이메일, 기타 서비스를 정상적으로 운영하려면 DNS 설정이 올바르게 유지되어야 합니다.호스팅 영역을 삭제하면 도메인과 관련된 모든 DNS 설정이 사라져 서비스가 중단될 수 있습니다.AWS는 이러한 실수를 방지하기 위해 호스팅 영역 삭제 전, NS(Name Server) 및 SOA(Start of Authority) 레코드를 제외한 나머지 레코드를 수동으로 삭제하도록 요구합니다. 왜 나머지 레코드를 수동으로 삭제해야 하나요?호스팅 영역을 삭제하면 해당 영역의 모든 레코드가 제거됩니다.AWS는 사용자가 도메인과 연결된 DNS 설정을 확인하고, 서비스 중단이나 데이터 손실을 방지..

Dev/AWS 2024.11.29

[EC2] AWS EC2 프리티어 인스턴스 생성하기

EC2 인스턴스란?EC2(Elastic Compute Cloud)는 AWS에서 제공하는 가상 서버 서비스로, 다양한 운영체제와 애플리케이션을 설치하고 실행할 수 있습니다. AWS 프리티어를 통해 12개월 동안 무료로 특정 리소스를 사용해볼 수 있습니다. 무료 클라우드 컴퓨팅 서비스 - AWS 프리 티어이러한 프리 티어 혜택은 AWS 신규 고객에게만 제공되며 AWS 가입일로부터 12개월 동안 유효합니다. 12개월의 무료 사용 기간이 만료되거나 애플리케이션 사용량이 프리 티어 범위를 초과할 경우aws.amazon.com위 AWS 프리티어 개요 페이지에 다음과 같은 안내가 있습니다.그렇습니다. 공짜 서버를 매월 750시간 사용할 수 있습니다.음? 한달 동안 계속 서버를 실행해도 31D * 24H = 744시간..

Dev/AWS 2024.11.18

[PowerShell] Windows에서 빈 폴더를 자동으로 삭제하는 PowerShell 스크립트

파일 관리 작업을 하다 보면 불필요한 빈 폴더가 많이 생기곤 합니다. 특히 프로젝트를 관리하거나 여러 디렉터리를 정리할 때 빈 폴더가 쌓이면 관리가 번거로워질 수 있습니다. 이번 글에서는 PowerShell 스크립트를 사용하여 Windows에서 빈 폴더를 자동으로 탐색하고 삭제하는 방법을 소개하겠습니다. 아래는 Windows에서 빈 폴더를 삭제하기 위한 PowerShell 스크립트입니다. 이 스크립트는 현재 디렉터리에서 시작해 모든 하위 폴더를 탐색하고, 빈 폴더를 찾아 삭제하는 작업을 수행합니다.# 현재 디렉터리에서 시작하여 모든 하위 디렉터리를 검색하고, 디렉터리 정보만 가져옴$folders = Get-ChildItem -Path . -Recurse -Directory# 삭제된 폴더 수를 기록하는 변..

Dev 2024.11.15

[Docker] Docker 컨테이너 기본 시간대 설정

기본적으로 Docker 컨테이너는 호스트 시스템의 시간대와 무관하게 UTC 표준 시간대로 설정되어 있습니다. 이 점은 특히 한국과 같이 UTC+9 시간대를 사용하는 환경에서 중요한 고려 사항이 될 수 있습니다.호스트(EC2)의 시간대를 설정하는 방법은 지난 글에서 다룬적 있습니다. [EC2] AWS EC2 인스턴스에서 시간대(Timezone) 설정 변경하기AWS EC2 인스턴스를 활용할 때 기본적으로 시간대(Timezone)가 UTC(세계 협정시)로 설정되어 있습니다.UTC는 글로벌 시간 표준으로 편리하지만, 한국 시간과 같은 로컬 시간대가 필요한 경우에는 시간kyr-db.tistory.com하지만, Docker 컨테이너는 여전히 UTC 표준시간대를 사용합니다. 이를 해결할 수 있는 방법을 스프링 서버의..

Dev/Docker 2024.11.11

[Dev C++] Dev C++에서 for 내부 변수 선언 오류 해결 방법

C언어 표준에 따라 for 내부 변수를 선언할 때, C99 보다 오래된 표준을 사용하는 경우 오류가 발생할 수 있습니다.이 문제를 해결하기 위한 표준 준수 작성 방법과, 컴파일러 옵션을 수정하는 방법을 설명하겠습니다. 1. 기본 C 표준 준수for 내부 변수 선언은 C99부터 지원되는 기능입니다.이를 해결하기 위해서는 우선 변수의 선언과 for 초기식을 분리하는 방법이 있습니다.다음과 같이 변수 선언을 분리하면 문제를 해결할 수 있습니다.초기식을 전체를 이동하는 방법도 가능합니다.이 방법은 C99 이후의 표준을 사용하지 않고도 C 표준을 준수하는 방법입니다.  2. 컴파일러 설정 변경하위 버전의 Dev C++에서는 컴파일러의 기본 설정에 따라 C89가 적용되는 경우가 많습니다.C99 또는 C11을 사용해..

Dev 2024.11.09