Docker
- 컨테이너 기반의 오픈소스 가상화 플랫폼
- 다양한 프로그램, 실행환경을 컨테이너로 추상화하고 동일한 인터페이스를 제공하여 프로그램의 배포 및 관리를 단순화
- 백엔드 프로그램, 데이터베이스 서버, 메시지 큐 등 어떤 프로그램도 컨테이너로 추상화 가능
- 컨테이너 (Container)
- 호스트와 다른 컨테이너로 격리된 시스템 자원과 네트워크를 사용하는 프로세스
- 이미지는 읽기 전용으로 사용하여 변경사항은 컨테이너 계층에 저장
-> 컨테이너에서 무엇을 하든 이미지는 영향을 받지 않음
- 이미지 (Image)
- 컨테이너를 생성할 때 필요한 요소를 포함 (파일, 설정 값 등)
- 컨테이너의 목적에 맞는 바이너리와 의존성이 설치되어 있음
- 여러 개의 계층으로 된 바이너리 파일로 존재
- 주요 명령어
- Container 생성 및 실행 관련
- container 생성 및 실행 : run
- container 중지 : stop
- container 실행 : start
- container 재실행 : restart
- Container 관리 관련
- container 확인 : ps
- container 삭제 : rm
- Container 실행 관리 관련
- container log 확인 : logs
- container에 명령어 수행 : exec
- Image 관리 관련
- image 확인 : images
- image 삭제 : rmi
- image 다운로드 : pull
- image 업로드 : push
- image 태그 지정 : tag
- Container 생성 및 실행 관련
Devops
- 소프트웨어의 개발과 운영의 합성어로써, 소프트웨어 개발자와 정보기술 전문가 간의 소통, 협업 및 통합을 강조하는 개발 환경이나 문화
Devops engineer
- 올바른 DevOps 문화를 위해 서비스 혹은 SW LifeCycle에서 반복적인 일들을 자동화하고, 기술적 문제 혹은 팀의 차이를 기술적으로 예방하고 해소하는 사람
- Soft skill
- 소프트 스킬은 사회 기술, 의사소통 기술, 성격 또는 성격 특성 등 다양한 조합으로 사람들이 환경을 탐색하고 다른 사람들과 잘 일하는 능력을 이야기 함 - Technical skill
- 기술적 스킬은 특정한 일을 효과적으로 수행하는 지식과 능력을 이야기 함
- IT 영역에서는 프로그래밍 언어 작성 능력, SW 디자인, 데이터베이스 및 서버관리 등 특정한 기술의 지식과 수행능력을 예로 들 수 있음- 프로그램 : Go, Python 등 능숙하게 다룰 수 있는 언어는 큰 강점
- 운영체제 : Linux와 같은 운영체제를 능숙하게 다루는 것과 개념을 반드시 알아야 함
- 서버관리 : 서버를 관리하는 기술과 운영지식을 통해 신뢰할 수 있는 서비스를 구축해야 함
- 오픈소스 : 인프라를 이루는 SW들을 이해하고, 자동화 도구들을 다룰 수 있어야 함
- 클라우드 : 퍼블릭 클라우드를 능숙하게 다루고, 직접 구축 및 설계를 할 수 있어야 함
728x90