기본적인 Docker에 대한 개념을 공부하고 Dockerfile 문법을 공부
- 도커 파일, 도커 컴포즈(Compose) 개념, 도커 명령어, 도커 개념
- 도커 명령어와, 도커 파일에 대해 작성하면 됩니다. ( *필수* 도커 컨테이너 생성, 삭제, 도커 컨테이너 이미지 생성,
삭제 그 외에도 꼼꼼히 작성
4 주차 과제 : Dockerfile을 이용하여 Flask + MYSQL으로 만든 서버를 구축, 도커 파일과 Flask MySql으로 만든 소스코드들을 전부 GITHUB에 업로드 하여 깃허브 링크를 포함하여 과제 제출 바랍니다.
+ docker build 명령어와 docker run 등의 명령어를 이용하여 바로 서버가 작동 될 수 있도록 만들어야 합니다. ( 한 마디로, 도커라이징 하면 됩니다. )
+ 본인이 도커 명령어를 이용하여 서버를 작동 시킨 명령어를 모두 README.md 파일에 업로드 하시기 바랍니다.
* 해당 과제는 도커 빌드하는 법, 도커 이미지 빌드하는 법, 플라스크 서버 도커 이미지 빌드하는 법 등 이런식으로 구글링 하면서 하시면 됩니다.
https://docs.docker.com/get-started/
Overview of the get started guide
Get started with the Docker basics in this comprehensive overview, You'll learn about containers, images, and how to containerize your first application.
docs.docker.com
https://arca.live/b/programmer/92228933
docker 에 대한 간단한 개념 이해 - 코딩 채널
* 대략적인 개념을 잡는 거니 틀린 표현도 있을 수 있음 어렵게 생각하지 말고 편하게 생각해 Docker가 뭔데 하면 어디서 얼핏 들어봤을거임이렇게 생긴거 한번쯤은 봤지? 안봤으면 지금본게 사람
arca.live
도커와 컨테이너의 이해 (1/3) - 컨테이너 사용법
목차 1. 도커 이미지? 도커 컨테이너? a. 도커 이미지 b. 도커 컨테이너 2. 기본적인 도커 명령어 a. 도커 컨테이너 안녕하세요. 첫 번째 글을 작성하게 된 클라우드메이트 T
tech.cloudmt.co.kr
https://youtu.be/qSysZEBEqRM?si=CTRcGPeB5kwvAo7R
https://learn.microsoft.com/ko-kr/training/paths/administer-containers-in-azure/
Azure 학습 경로에서 컨테이너 관리 - Training
이 학습 경로에서는 Azure Container Instances를 생성 및 관리하고, Kubernetes에 대한 탄력적 확장을 제공하는 데 활용하는 방법을 알아봅니다.
learn.microsoft.com
https://hudi.blog/about-docker/
이론과 실습을 통해 이해하는 Docker 기초
본 포스팅은 도커에 대한 자세한 개념, 도커 기본 명령어, 컨테이너 실행 실습, 도커 컴포즈, 도커 이미지 빌드, 도커 허브에 이미지 배포 등 전반적인 도커 기초에 대한 내용을 다룬다. 1. 도커 (D
hudi.blog
https://blog.naver.com/seed102/223273985773
vscode python 가상환경 설정
1. 파이썬 설치 기본적으로 파이썬이 깔려있는지를 확인해야한다. powershell을 열고 다음의 명령어를 입력...
blog.naver.com
컨테이너
- 앱이 구동되는 환경까지 감싸서 실행할 수 있도록 하는 격리 기술
- 애플리케이션의 표준화된 이식 가능한 패키징
- 소프트웨어 패키지를 빌드하고 실행할 수 있는 격리된 환경
- 이 소프트웨어 패키지에는 모든 컴퓨팅 환경에서 빠르고 안정적으로 애플리케이션을 실행하기 위한 코드 및 모든 종속성이 포함됨
- 이 패키지를 컨테이너 이미지라고 함
- 컨테이너 이미지는 애플리케이션을 배포하는 데 사용하는 단위가 됨
소프트웨어 컨테이너화
- VM(가상 머신)을 사용하지 않고 컨테이너를 배포 및 실행하는 데 사용되는 OS 가상화 방법
- 컨테이너는 물리적 하드웨어, 클라우드, VM 및 여러 운영 체제에서 실행될 수 있다
컨테이너 런타임
- 컨테이너를 다루는 도구
도커 (Docker)
- 컨테이너를 개발, 제공 및 실행하는 데 사용되는 컨테이너화 플랫폼
- 하이퍼바이저를 사용하지 않으며, 애플리케이션을 개발하고 테스트하는 경우 데스크톱 또는 노트북에서 Docker를 실행할 수 있다
- Docker의 데스크톱 버전은 Linux, Windows 및 macOS를 지원
- 컨테이너를 다루는 도구(컨테이너 런타임) 중 가장 유명한 것
- 애플리케이션을 신속하게 구축, 테스트 및 배포할 수 있는 소프트웨어 플랫폼
- Docker는 소프트웨어를 컨테이너라는 표준화된 유닛으로 패키징
- 컨테이너에는 라이브러리, 시스템 도구, 코드, 런타임 등 소프트웨어를 실행하는 데 필요한 모든 것이 포함되어 있음
- Docker를 사용하면 환경에 구애받지 않고 애플리케이션을 신속하게 배포 및 확장할 수 있으며 코드가 문제없이 실행될 것이다
Docker 아키텍쳐
- Docker 플랫폼은 컨테이너화된 애플리케이션을 빌드, 실행 및 관리하는 데 사용하는 여러 구성 요소로 구성됨
https://learn.microsoft.com/ko-kr/training/modules/intro-to-docker-containers/2-what-is-docker
Docker란 무엇인가요? - Training
이 단원에서는 Docker의 정의와 해당 아키텍처에 관해 설명합니다.
learn.microsoft.com
- Docker 엔진
- Docker 클라이언트
- Docker 서버
- Docker 개체
- Docker Hub
https://colevelup.tistory.com/30
[Docker] 그래서 도커(Docker)랑 컨테이너(Container)가 뭐냐구요
도커(Docker), 컨테이너(Container)는 무엇일까요? 도커(Docker) 등장 배경과 컨테이너(Container) 환경의 발달 과정 그리고 기존 가상화 방식과 컨테이너(Container) 기반 가상화 방식의 차이점과 운영방식등
colevelup.tistory.com
도커 이미지 (Docker Image)
- 컨테이너를 만드는 데 사용되는 읽기 전용(read-only) 템플릿
- 컨테이너 실행에 필요한 파일과 설정값 등을 포함하고 있는 도커파일을 만든 후 Dockerfile을 빌드 하여 이미지를 만든다
- 소프트웨어를 포함하는 이식 가능 패키지
- 실행 시 컨테이너가 됨
- 컨테이너는 이미지의 메모리 내 인스턴스
- 변경할 수 없음
- 이미지를 빌드한 후에는 변경할 수 없음
- 이미지를 변경하는 유일한 방법은 새 이미지를 만드는 것
- 이 기능을 사용하면 프로덕션에서 사용하는 이미지가 개발 및 QA에서 사용되는 이미지와 동일하게 됨
도커 파일
- Docker 이미지를 빌드하고 실행하는 데 사용하는 지침을 포함하는 텍스트 파일
- 여기서 쓰이는 이미지의 정의:
- 새 이미지를 만드는 데 사용하는 기본 또는 부모 이미지
- 기본 OS를 업데이트하고 추가 소프트웨어를 설치하는 명령
- 개발된 애플리케이션과 같이 포함할 빌드 아티팩트
- 스토리지 및 네트워크 구성과 같은 노출할 서비스
- 컨테이너가 시작될 때 실행할 명령
- 여기서 쓰이는 이미지의 정의:
도커 컨테이너
- What is Docker Container?
- 도커 이미지를 실행한 상태
- 기능
- 이미지로 컨테이너를 생성하면 이미지의 목적에 맞는 파일이 들어있는 파일 시스템과 격리된 시스템 자원 및 네트워크를 사용할 수 있는 독립된 공간이 생성된다 => 이것을 도커 컨테이너라고 한다
- 도커 컨테이너는 읽기 전용안 이미지에 변경된 사항을 저장하는 컨테이너 계층(Layer)에 저장한다
- 예시
- 도커 이미지 = 도넛 레시피
- 도넛 컨테이너 = 해당 레시피를 이용해 만든 도넛
- 하나의 도넛 레시피로 여러 가지 맛의 도넛을 만들 수 있는 것과 같이, 하나의 도커 이미지로 여러 개의 도커 컨테이너를 만들 수 있다
- 기존의 도넛 레시피를 수정헤도 기존의 레시피로 만들어진 도넛에는 영향이 없듯이, 도커 이미지를 변경해도 이미 실행 중인 도커 컨테이너에는 영향을 주지 않는다
도커와 컨테이너의 이해 (1/3) - 컨테이너 사용법
목차 1. 도커 이미지? 도커 컨테이너? a. 도커 이미지 b. 도커 컨테이너 2. 기본적인 도커 명령어 a. 도커 컨테이너 안녕하세요. 첫 번째 글을 작성하게 된 클라우드메이트 T
tech.cloudmt.co.kr
Dockerfile 문법
도커 컨테이너 생성, 삭제, 도커 컨테이너 이미지 생성,
삭제
# 기본적인 도커 명령어의 구조
# docker [대상] [액션]
# 대상:
container, image, volume, network
# 액션:
ls, inspect, start, run
도커 빌드하는 법, 도커 이미지 빌드하는 법, 플라스크 서버 도커 이미지 빌드하는 법
# 스택 가능 통합 파일 시스템
# 콘텐츠가 병합되는 것처럼 보이도록 분기라는 여러 디렉터리를 쌓을 수 있는 파일 시스템
# 그러나 콘텐츠는 실제로 별도로 유지
Unionfs
# Docker 이미지를 만드는 데 사용
# Unionfs를 사용하면 파일 시스템을 빌드할 때 분기를 추가하고 제거할 수 있음
============================================================================
# 이미지를 빌드하는 방법 - docker build
docker build -t temp-ubuntu .
# 이미지를 빌드할 때 -t 명령 플래그를 사용하여 이미지의 이름을 지정하고 선택적으로 태그를 지정
=============================================================================
# 이미지를 나열하는 방법 - docker images
docker images
# 이미지의 ‘이름’, ‘태그’, ‘이미지 ID’가 어떻게 나열되는지 확인
# 이미지 ID는 이미지의 이름 또는 태그가 모호한 경우 이미지를 식별하고 관리하는 유용한 방법
===========================================================================
# 이미지를 제거하는 방법 -docker rmi
# docker rmi 명령을 사용하여 로컬 Docker 레지스트리에서 이미지를 제거할 수 있다
# 제거할 이미지의 이름 또는 ID를 지정
docker rmi temp-ubuntu:version-1.0
# 컨테이너가 여전히 이미지를 사용하는 경우 이미지를 제거할 수 없음
# 컨테이너 이미지 레이어가 사용 가능한 총 공간에 추가되므로 컨테이너 호스트 디스크의 공간을 절약해야 하는 경우에 유용
'웹해킹' 카테고리의 다른 글
웹해킹 스터디 3: 점프 투 플라스크 (0) | 2023.11.26 |
---|---|
웹해킹 스터디 1: 점프 투 파이썬 (0) | 2023.11.07 |
XSS(Cross Site Scripting)를 알아보자 (0) | 2023.08.08 |