728x90
반응형

IT 66

도커 이미지 공유하기

도커 이미지 공유하기 도커를 사용하여 쉽게 이미지를 공유할 수 있습니다. 이미지가 있는 모든 사람은 그 이미지를 기반으로 컨테이너를 만들 수 있습니다. 그러므로 이미지는 공유를 하지만 컨테이너는 독립적이기 때문에 공유하지 않습니다. 방법 1. Dockerfile과 소스코드 공유 Dockerfile과 소스 코드를 공유하면 다른 사용자가 해당 Dockerfile을 기반으로 이미지를 직접 빌드하고 컨테이너를 실행할 수 있습니다. 이미지를 빌드하기 위해 필요한 모든 정보를 공유하는 방식입니다. 2. 빌드된 이미지 공유 빌드된 이미지 전체를 공유합니다. 이미지를 받은 사용자는 이미지를 다운로드하고 즉시 컨테이너를 실행할 수 있습니다. 이미지에 필요한 모든 것이 포함되어 있으므로 별도의 빌드 단계가 필요하지 않습니..

Docker 2023.10.26

도커 이미지 & 컨테이너 관리

도커 이미지 & 컨테이너 관리 도커 이미지와 컨테이너를 관리하기 위해서는 관리 옵션을 확인해야 합니다. docker --help 도커에 사용가능한 모든 옵션 확인 중지된 새 컨테이너 시작 docker ps -a 명령어를 사용하여 중지됬거나 실행중인 모든 컨테이너를 확인할 수 있습니다. docker start [컨테이너_ID or 이름] 이 명령어를 통해 백그라운드에서 컨테이너를 실행할 수 있습니다. docker run과 같이 터미널을 차단하지않고 백그라운드에서 실행합니다. Docker 연결(attched) or 분리(detached) 모드 컨테이너를 시작할 때, 연결 모드 (attached) 또는 분리 모드 (detached)를 선택할 수 있습니다. docker start 명령을 사용하여 컨테이너를 시작..

Docker 2023.10.25

도커 이미지와 레이어 기반 아키텍처

도커 이미지의 핵심 특징 1. 읽기 전용 도커 이미지는 읽기 전용입니다. 이미지가 빌드되면 내부 파일 시스템과 구성은 불변하게 됩니다. 변경할 수 없습니다. 2. 레이어 기반 도커 이미지는 여러 레이어로 구성됩니다. 이 레이어들은 명령어를 기반으로 생성되며, 변경 사항을 효율적으로 관리합니다. 3. 캐시 도커는 명령어의 결과를 캐싱하여 이미지 빌드 속도를 향상시킵니다. 변경된 명령어 이후에는 해당 명령부터 다시 빌드하며, 이전 결과를 캐싱하여 빌드 속도를 향상 시킵니다. 이미지 레이어 이미지의 각 레이어는 도커 파일에서 정의한 명령어와 명령어 이후의 파일 시스템 변경 사항을 나타냅니다. 모든 명령어와 파일 변경 사항은 이미지 레이어로 포장됩니다. 이미지 레이어의 생성 도커 이미지를 빌드할 때마다 모든 명..

Docker 2023.10.25

도커 이미지와 컨테이너 : 기본 개념과 빌드

이미지(Image) 도커 이미지는 컨테이너의 블루프린트 또는 템플릿입니다. 이미지에는 코드 및 코드를 실행하는 데 필요한 모든 도구와 설정이 포함됩니다. 이미지는 공유 가능한 패키지로, 한 번 정의하면 다른 시스템에서 여러 컨테이너를 실행할 수 있습니다. 이미지는 레이어(layer)라는 기술을 통해 빌드되며 변경사항을 저장하고 재사용할 수 있도록 합니다. 컨테이너(Container) 도커 컨테이너는 이미지를 기반으로 실행되는 실제 실행 인스턴스입니다. 컨테이너는 이미지의 복제본이며 도커 엔진에서 코드 실행 환경을 격리시킵니다. 이미지를 여러 컨테이너에서 실행하여 동일한 애플리케이션을 다른 시스템 또는 서버에서 실행할 수 있습니다. 컨테이너는 이미지를 기반으로 하며 도커 엔진에서 실행되므로 애플리케이션의 ..

Docker 2023.10.24

도커 (Docker) 개념

도커 (Docker) 란 도커는 컨테이너 기술의 핵심입니다. 이를 더 쉽게 이해하기 위해 컨테이너를 비유하자면 피크닉 바구니에 모든 것을 포장한 것과 비슷합니다. 여러분이 피크닉을 가려면 음식과 필요한 모든 도구를 가지고 나가야 합니다. 피크닉 바구니가 그 역할을 하고, 바구니 안에는 필요한 모든 것이 포함되어 있죠. 마찬가지로 도커 컨테이너는 소프트웨어 애플리케이션을 구동하는 데 필요한 모든 구성 요소를 내장하고 격리시킨 것입니다. 각 컨테이너는 독립적으로 실행되며, 컨테이너 간에는 격리가 유지됩니다. 이것은 피크닉 바구니와 같이 각 컨테이너에 필요한 모든 것을 담아두고, 필요한 때에 컨테이너를 가져다 쓸 수 있는 개념입니다. 도커는 컨테이너를 쉽게 생성하고 관리하기 위한 도구입니다. 이로써 소프트웨어..

Docker 2023.10.24

EC2 기초 (2)

SSH(Secure Shell) 개요 SSH는 클라우드에서 실행 시 까다로운 부분 중 하나는 유지보수나 조치를 취하기 위해 서버 내부와 연결하는 것이다. 터미널이나 명령줄을 이용해서 원격 머신이나 서버를 제어할 수 있게 해준다. Linux 서버에서는 SSH를 서버에 사용한다. SSH는 명령줄 인터페이스 도구로, 운영체제에 따라 Mac, Linux, Window버전10이상부터도 사용이 가능하다. Putty는 SSH와 동일한것으로 모든 버전의 Window에서 사용가능하다. SSH와 Putty는 SSH 프로토콜을 사용해 EC2 인스턴스에 연결한다. 마지막으로 EC2 Instance Connect는 웹 브라우저로 EC2 인스턴스에 연결합니다 좋은 점은 Mac과 Linux 그리고 Window의 모든 버전에서 사용..

EC2 기초 (1)

EC2 (Elastic Compute Cloud ) : Infrastructure as a Service EC2는 AWS에서 제공하는 서비스형 인프라스트럭처이다. 즉, EC2는 하나의 서비스가 아니다. 가상머신을 EC2에서 임대하는 것을 EC2 인스턴스 라 한다. 데이터를 가상 드라이브 또는 EBS 볼륨에 저장할 수 있고, ELB로 로드는 분산 시킬 수 있다. 오토 스케일링 그룹(ASG)을 통해 서비스를 확장할 수 있다. 클라우드는 필요할 때마다 언제든지 컴퓨팅을 대여할 수 있고 EC2가 바로 그 예시이다. EC2의 크기 조정 및 구성 옵션 EC2 인스턴스의 운영 체제에는 가장 인기있는 Linux, Window, Mac OS가 있다. 이 가상 머신에 사용할 컴퓨팅 성능과 코어의 양도 선택할 수 있다 (C..

AWS IAM 정책 및 CLI

IAM 사용자 및 그룹 IAM = Identity and Access Management 사용자를 생성하고 그룹에 배치하기 때문에 글로벌 서비스다. 계정을 생성할때만 사용되고 글로벌이기 때문에 리전을 선택할 필요가 없다. 그룹에는 오직 사용자만 배치할 수 있다. 그룹에 속해있지 않아도되고, 한 사람이 여러 그룹에 속해도 된다. 사용자와 그룹을 생성하는 이유는 aws계정 사용을 허용 하기 위해이다. 요약하자면, IAM 정책을 통해 사용자에게 직접 권한을 부여할 수 있고, 그룹으로 묶어서 여러 사람들을 동시에 권한을 부여 할 수 있다. 또한 여러 그룹에 속해서 여러가지 권한을 받을 수 있다. AWS에서는 최소 권한의 원칙을 적용한다. 최소 권한의 원칙 : 사용자가 꼭 필요로 하는 것 그 이상의 권한을 주지 ..

데이터베이스 뷰 (VIEW)

뷰 (VIEW) 뷰는 일반 사용자 입장에서는 테이블과 동일하게 사용하는 개체이다. 쉽게 생각하자면 뷰는 특정한 정보들만 따로 담아놓은 가상의 테이블이라고 생각하면된다. 형식 CREATE VIEW AS [원하는 정보의 SELECT 문] 뷰의 장점은 보안성과 쿼리의 재활용과 단순화 이다. 만약 테이블안의 중요한 내용이 들어있는경우 다른정보를 확인하려고할때 그 중요한 내용까지 출력할 수 있다. 그걸 방지하기위해 원본 테이블은 막아놓고 뷰를 생성해 필요한 정보들만 출력하는 것이다. 또한 뷰는 재활용하기에 좋다 특정 쿼리를 자주 사용하는데 그 쿼리가 복잡하다면 효율성이 떨어진다. 그래서 그 쿼리를 뷰로 정의해놓고 필요할때 마다 뷰만 출력하면 된다.

MariaDB 2023.10.13

데이터베이스 제약조건(기본키,외래키,CHECK,DEFAULT)

기본키 제약 조건 (개체 무결성) 테이블에 존재하는 많은 행의 데이터를 구분할 수 있는 식별자를 '기본 키'라고 부른다. 기본 키에 입력되는 값은 중복될 수 없으며 NULL 값이 입력될 수 없다. 예를 들어 인터넷사이트에서 회원가입을 할때 아이디값은 절대 중복 될 수 없고 NULL값도 들어가선 안된다. 이 아이디값이 기본키로 설정되어 있다. 형식 CREATE TABLE문에 PRIMARY KEY라는 예약어를 넣어주면된다. CREATE TABLE ( id CHAR(8) PRIMARY KEY , NAME VARCHAR(10), birth INT ); 만약 PRIMARY KEY를 지정하면서 키의 별칭을 지어주려면 마지막행에 CONSTRAINT PRIMARY KEY 별칭 (테이블명) CONSTRAINT는 생략해도..

MariaDB 2023.10.13
728x90
반응형