본문 바로가기

분류 전체보기84

[그림과 실습으로 배우는 도커 & 쿠버네티스] Ch4 - 컨테이너를 실행해 보자 도커 엔진 시작하기/종료하기도커 엔진은 설치와 함께 실행되며, 동작 상태로 남아있지만 컨테이너를 실행 중이 아니라면 컴퓨터 리소스를 거의 차지하지 않아 문제가 되지 않는다. 도커 데스크톱은 도커 엔진을 자동으로 실행하도록 설정되어 있기 때문에 이 설정도 비활성화하지 않으면 컴퓨터가 부팅될 때마다 도커 엔진도 자동으로 실행된다. 도커 엔진이 종료되면 모든 컨테이너가 정지 상태가 되므로, 정전 등으로 전원이 내려가면 복구를 위해 컨테이너를 따로 실행하는 스크립트를 작성해야 한다. 도커 엔진 시작: 도커 데스크톱 클릭도커 엔진 종료: 화면 오른쪽 아래 태스크 트레이에서 아이콘 우클릭 후 Quit Docker Descktop 컨테이너의 기본적인 사용 방법컨테이너를 다루는 모든 명령은 ‘docker’로 시작한다... 2025. 1. 5.
[그림과 실습으로 배우는 도커 & 쿠버네티스] Ch3 - 도커를 사용해보자 도커 사용하기도커 환경을 구축하는 세 가지 방법리눅스 컴퓨터에서 도커 사용하기가상 머신이나 렌탈 환경에 도커를 설치하고 윈도우나 macOS를 통해 사용하기윈도우용/macOS용 도커 사용하기 (도커 데스크톱 사용)윈도우용 도커 데스크톱은 Hyper-V (윈도우에 포함됨)macOS용 도커 데스크톱은 HyperKit (도커 데스크톱 패키지에 포함)이라는 가상화 기술 사용 주의 사항도커 데스크톱을 사용하려면 윈도우에서는 Hyper-V가 활성 상태여야함.VirtualBox, VMware과 같은 가상화 소프트웨어와 충돌을 일으킬 수도 있음64비트 운영체제에서만 동작윈도우는 Hyper-V가 포함된 윈도우 10 프로 이상에서만 사용가능 했으나, 2020년 추가된 WSL2 지원 버전으로 사용할 수 있게 되었다.도커 제작.. 2025. 1. 5.
[그림과 실습으로 배우는 도커 & 쿠버네티스] Ch2 - 도커의 동작 원리 도커의 동작 원리도커의 구조컨테이너/컨테이너/컨테이너(내부에는 리눅스 OS에서 커널 space을 제외한 user space이 있음)|도커 엔진|리눅스 운영체제|서버 컴퓨터 운영체제가 하는 일소프트웨어나 프로그램의 명령을 하드웨어에 전달하는 역할운영체제는 ‘커널’과 그 외 부분으로 구성된다. 책에서는 간단하게 커널과 그 외 부분이라고만 적으셨는데, 프로세스가 돌아가며 응용 프로그램을 실행시키는 공간이라고 알면 된다.User mode에서 시스템 콜을 이용해 kernel mode로 바뀐다.운영체제 다시 공부해야할듯.. 프로그램을 커널에 전달하고, 커널이 하드웨어를 다룬다.도커에서는 소프트웨어가 리눅스의 주변 부분에 명령을 전달하고, 이 것이 도커 엔진과 호스트 컴퓨터의 커널에 전달하여 실행한다. 도커 허브와 .. 2025. 1. 5.
[그림과 실습으로 배우는 도커 & 쿠버네티스] Ch1 - 도커란 무엇인가? 01 도커란 무엇인가?도커란?‘데이터 또는 프로그램을 격리시키는 기능’을 제공하는 소프트웨어여러 프로그램을 각각 독립된 환경에서 격리컨테이너와 도커 엔진컨테이너: 프로그램이 독립되어 위치할 수 있는 창고도커: 이 컨테이너를 다룰 수 있는 소프트웨어도커를 사용 시 도커 엔진 설치 필요⇒ 도커 엔진을 이용해 컨테이너를 생성, 구동이미지컨테이너를 만들려면 도커 엔진 외에도 이미지가 필요하나의 도커에서 여러 컨테이너 생성 가능리눅스도커는 리눅스 운영 체제 위에서, 리눅스용 프로그램만 동작 가능격리프로그램 하나를 업데이트하면 다른 프로그램에도 영향을 미치기 때문에, 데이터나 프로그램을 독립된 환경에 격리해야함 02 서버와 도커서버의 두 가지 의미서버란? ‘어떤 서비스를 제공하는 것’서버의 두 가지 의미기능적 의미.. 2025. 1. 5.
[백준 20186] 수 고르기 - python, js https://www.acmicpc.net/problem/20186 💡문제 분석 요약N개의 자연수가 좌우로 배열되어 있다. 여러분은 이 중 K개를 골라야 한다. 고를 때는 K개 모두를 한번에 골라야 한다.여러분이 고른 수 각각에 대해서 그 수의 점수를 계산할 것이다. 점수는 자신의 수에서 자신의 왼쪽에 있는 수 중 선택된 수의 개수를 뺀 값이다. 이렇게 고른 수 각각에 그 점수를 계산한 후 전체점수는 계산된 점수들의 합이다. 여러분은 전체점수가 최대가 되도록 K개의 수를 골라야 한다.예를 들어서, N = 5개의 자연수가 순서대로 2 3 1 2 1 로 주어지고, K = 3이라고 하자. 만약 첫 번째 2와 두 개의 1을 골랐다면, 각 수의 점수를 계산해서 나열하면 2 0 −1과 같다. 따라서 전체 점수는 .. 2025. 1. 4.
[백준 13706번] 제곱근 - python, js https://www.acmicpc.net/problem/13706 💡문제 분석 요약문제정수 N이 주어졌을 때, N의 제곱근을 구하는 프로그램을 작성하시오.입력첫째 줄에 양의 정수 N이 주어진다. 정수 N의 제곱근은 항상 정수이며, N의 길이는 800자리를 넘지 않는다.출력첫째 줄에 정수 N의 제곱근을 출력한다.💡알고리즘 설계N**(1/2) 와 같은 짧은 방법으로 해결된다면 좋았겠지만 아쉽게도 N이 800자리라 메모리 부족으로 런타임 에러가 발생하게 된다.이분 탐색을 사용해보자.left=0, right=Nmid=(left+right)//2if mid**2==N: print(mid)elif mid**2else: right=mid-1💡코드N = int(input())print(round(N**(1/2).. 2025. 1. 3.
[백준 26517] 연속인가? ? - python, js https://www.acmicpc.net/problem/26517💡문제 분석 요약💡알고리즘 설계ax+b == cx+d 일 경우 Yes와 f(x)를 출력한다.아닐 경우 No를 출력한다.함수의 연속성에 대한 설명함수 f(x)가 특정 점 x=t에서 연속이라는 것은 다음 세 가지 조건을 만족하는 경우를 의미한다.f(t)가 정의되어 있어야 한다.lim⁡x→tf(x)가 존재해야 한다.lim⁡x→tf(x)=f(t)이어야 한다.즉, x=t에서 함수값과 극한값이 모두 존재하며, 그 값이 서로 같을 때 f(x)는 x=t에서 연속이라고 한다. 예시 입력에서 k=2, a=6, b=2, c=5, d=4,일 때 그래프이다. 예시 입력에서 k=-7, a=-9 b=-6 c=-7 d=-8일 때, 함수의 비연속성을 보여주는 그래프.. 2025. 1. 2.
[백준 16395] 파스칼의 삼각형 - python, js https://www.acmicpc.net/problem/16395💡문제 분석 요약문제파스칼의 삼각형은 이항계수를 삼각형 형태로 배열한 것인데, 블레즈 파스칼(1623-1662)을 따라 이름 붙여졌다.단순한 형태로, 파스칼의 삼각형은 다음과 같은 방법으로 만들 수 있다.N번째 행에는 N개의 수가 있다.첫 번째 행은 1이다.두 번째 행부터, 각 행의 양 끝의 값은 1이고, 나머지 수의 값은 바로 위 행의 인접한 두 수의 합이다.예를 들어, n=3이면 3번째 행의 2번째 수는 위 행의 인접한 두 수 (1과 1)을 더해서 만든다.n=6일 때, 파스칼 삼각형의 6번째 행의 10은 5번째 행의 인접한 두 수(4와 6)을 더해서 구한다.같은 방식으로 n=11일 때, 다음과 같은 파스칼의 삼각형을 만들 수 있다.정.. 2025. 1. 1.
[백준 24313] 알고리즘 수업 - 점근적 표기 1 - python, js https://www.acmicpc.net/problem/24313 💡문제 분석 요약문제오늘도 서준이는 점근적 표기 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자.알고리즘의 소요 시간을 나타내는 O-표기법(빅-오)을 다음과 같이 정의하자.O(g(n)) = {f(n) | 모든 n ≥ n0에 대하여 f(n) ≤ c × g(n)인 양의 상수 c와 n0가 존재한다}이 정의는 실제 O-표기법(https://en.wikipedia.org/wiki/Big_O_notation)과 다를 수 있다.함수 f(n) = a1n + a0, 양의 정수 c, n0가 주어질 경우 O(n) 정의를 만족하는지 알아보자.입력첫째 줄에 함수 f(n)을 나타내는 정수 a1, a0가 주어진다. .. 2024. 12. 31.