본문 바로가기

Study103

Docker(3)-Dockerfile DockerFile 1.개요 =>DockerImage 을 생성하기 위한 스크립트 =>이미지를 사용하는 방법은 기존에 존재하는 이미지(DockerHub 나 Private Repositoty 에서 다운로드)를 이용하는 방법이 있고, 이미지를 직접 만들어서 사용하는 방법(동일한 환경을 만들어서 사용하거나 애플리케이션을 배포 =>이미지를 생성하는 방법 -현재 사용중인 컨테이너를 이미지로 생성 -스크립트를 이용(Dockerfile) =>IaC(Infrastructure as Code):인프라를 코드로 구성 -기존에는 하나의 개발팀이 개발을 하기 위해서 모여서 직접 동일한 버전의 소프트웨어를 설치해서 환경을 동일하게 생성 동일한 운영체제를 사용하거나 동일한 운영체제를 사용할 수 있는 VM을 이용 -리눅스 기반의 도.. 2024. 4. 4.
Docker(2) 1.컨테이너 와 호스트 간의 파일 복사 1)복사 명령 docker cp 소스 타겟 =>현재 컴퓨터에 있는 파일을 컨테이너에 전달 docker cp 현재컴퓨터의 파일겨로 컨테이너:컨테이너 경로 =>컨테이너에 있는 파일을 현재 컴퓨터에 전달 docker cp 컨테이너:컨테이너 경로 현재 컴퓨터의 파일 경로 2)아파치 컨테이너 와 현재 컴퓨터 사이의 파일 복사 =>Apache:웹 서버이고 이미지 이름은 httpd 이며 내부에서 열려있는 포트는 80(http의 기본 포트) 웹 서버나 데이터베이스 서버처럼 게속해서 서비스를 해야 하는 컨테이너는 -d 옵션이로 실행해야 하고 터미널로 접속해야 하는 컨테이너는 -it 옵션을 추가해서 생성 포트포워딩할때는 -p호스트 컴퓨터의포트:컨테이너의포트 =>아파치 컨테이너 실행 .. 2024. 4. 3.
Docker(1) 1.CI/CD 1)개요 =>CI/CD 의 개념은 Continuous Integration(지속적인 통합),Continous Delivery(지속적인 서비스 제공),Continuous Deployment(지속적인 배포) =>애플리케이션 개발 단계를 자동화해서 애플리케이션을 보다 짧은 주기로 고객에 전달하기 위한 방법 =>새로운 코드 통합으로 인해 개발 및 운영 팀에 발생하는 문제(Integration Hell)를 해결하는 방법 =>지속적인 통합이 제대로 구현되면 애플리케이션 코드의 새로운 변경 사항이 정기적으로 빌드 및 테스트를 거쳐 공유 레포지토리에 병합되므로 여러 명의 개발자가 동시에 애플리케이션 개발과 관련된 코드를 작업할 경우 서로 충돌하는 문제를 해결 2)지속적인 통합 =>개발 팀이 작은 변경 사.. 2024. 4. 2.
Cloud(1)-개요 1.Cloud 1)On-Premisee =>기업이 자체 데이터 및 솔루션을 등을 저장하기 위해서 데이터 센터를 구축하고 IT 서비스를 수행하는 방식 =>하드웨어를 포함한 모든 자원(컴퓨터, 라이센스, 네트워크 등)에 대한 초기 투자 비용 과 탄력적이 않은 제한된 용량으로 인해 지속적 관리 비용이 증가한다는 단점이 있지만 기업에 내재화 된 서비스를 이용하기 때문에 품질 및 보안에 대한 신뢰도는 높음 =>설계를 할 때 가급적 최대 사용량을 근거로 하고 네트워크 트래픽 또한 최대 순간 트래픽을 가정하기 때문에 고사양의 설계를 하게되고 증설에 따른 시간적, 인적 비용도 무시할 수 없음 =>Cloud를 사용하는 경우 초기 도입 비용은 적을 수 있지만 오랜 시간 동안 사용한다면 Cloud 의 비용이 On-Premi.. 2024. 4. 1.
Linux(3) **Linux 1.프로세스 1)한 번만 자동으로 수행: at 패키지를 이용 =>기본 패키지가 아니라서 설치 2)주기적으로 수행되는 작업 =>crontab 이용: 기본 패키지 =>crontab은 유저 별로 생성되며 파일에 작성해서 수행 =>명령어 형식 crobtab [-u 사용자ID] [옵션] [파일 경로] - 옵션 e: 편집 l: 파일 목록을 출력 r: 삭제 - 하나의 파일에 여러 개의 cron을 설정하는 경우에는 행 단위로 작성 하나의 행에 하나의 cron을 설정 =>cron 작성 방법 분 시간 일 월 요일 작업 내용 =>작성 - 바로 작성: crontab -e 12 * * * * /usr/bin/ls -l ~adam > ~adam/cron.out 20 * * * * /usr/bin/ls ~adam >.. 2024. 4. 1.
Linux(2) 1.Editor(문서 편집기) 1)종류 =>GUI (Graphic User Interface)환경:gedit =>CLI(Command Line Interface)환경 -행 단위 편집기: ed, ex,sed -화면 단위 편집기:vi,emacs 전통적으로 vi 편집기를 개발자들이 선호 2)vi 편집기 실행 =>vi 파일 경로 파일 경로에 파일이 존재하면 수정이고 존재하지 않으면 새로 만들기 3)vi 편집기 모드 =>입력 모드: 텍스트를 작성하고 편집하는 모드 =>명령 모드: 텍스트 편집은 할 수 없고 명령어를 사용해서 저장하고 종료하는 모드 4)모드 전환 =>입력 모드 -> 명령 모드: esc =>명령 모드 -> 입력 모드: i, I, a, A, o, O 5)종료 - 명령 모드에서 수행 =>wq!: 저장하고.. 2024. 3. 29.