Crontabcrontab은 UNIX 게열의 운영체제에서 주기적으로 명령어를 실행할 수 있게 해주는 스케줄러입니다.crontab 파일은 일정한 시간, 날짜, 요일에 특정 명령어를 실행할 수있도록 설정하는 파일입니다.crontab 파일은 각 사용자가 자신의 스케줄을 설정할 수 있도록 사용자 별로 존재하며, 시스템 관리자가 전체 시스템에 대한 스케줄을 설정할 수도 있습니다. Crontab 형식# 분 시 일 월 요일 명령어* * * * * 명령어각 필드(분, 시, 일, 월, 요일) 마다 아래와 같은 값을 줄 수 있습니다.분: 0 ~ 59시: 0 ~ 23일: 1 ~ 31월: 1 ~ 12요일: 0 ~ 7 (0과 7. 둘 다 일요일을 의미합니다)예를 들어, 매일 오전 3시에 /home/user/backup.sh 스..
이미지를 압축 파일로 저장하기Docker Image를 압축하면 .tar 확장자를 가진 파일로 생성됩니다.docker save -o [OUTPUT_FILE] IMAGE# my-app:v1 이미지를 my-app-v1.tar로 압축.docker save -o my-app-v1.tar my-app:v1# my-app:v1 이미지 제거docker rmi my-app:v1docker save 명령어 옵션docker save 명령어는 Docker Image를 .tar 파일로 저장하는데 사용됩니다. 이 명령어에는 다음과 같은 옵션이 있습니다.-o, --output: 저장할 파일의 경로를 지정합니다. 해당 옵션은 필수로 설정해줘야 합니다.-quiet: 해당 옵션을 사용하면 명령어 실행 중 출력되는 메시지를 최소화 할 수..
Dockerfile과 Docker Compose는 모두 Docker 생태계의 일부이며 서버 구동과 관련이 있지만, 그 역할과 목적에는 중요한 차이점이 있습니다.Dockerfile정의Dockerfile은 Docker Image를 생성하기 위한 레시피 혹은 설계도 같은 것입니다. 이 파일에는 컨테이너가 어떻게 작동해야 하는지에 대한 지시사항이 담겨 있습니다. 역할Dockerfile은 운영체제, 실행할 코드, 필요한 라이브러리 및 환경 변수 설정 등을 포함하여 특정 애플리케이션을 실행하는 데 필요한 모든 것을 정의합니다. 사용 예시예를 들어 Python 애플리케이션을 Docker 컨테이너에서 실행하기 위해 필요한 Python 런타임, 코드 복사, 필요한 패키지 설치 등을 Dockerfile에 명시합니다.FRO..
Docker에 Linux Container를 올린 후, SSH 접속 프로그램(Putty)을 통해 접속하는 방법을 알아보도록 하겠습니다.리눅스 관련 이미지 받기우선 Docker Hub에서 리눅스 OS와 관련된 이미지(CentOS / Ubuntu)를 다운 받아야 합니다. 저는 Ubuntu 이미지를 다운 받아 실행하였습니다.# 명령어를 통해 ubuntu와 관련된 이미지들을 확인합니다.docker search ubuntu 이 중, STARS가 가장 많고 OFFICIAL 항목이 [OK]인 이미지는 공식적인 이미지이며, 신뢰성 있는 이미지입니다.그럼 다음과 같은 명령어를 통해 최상단의 ubuntu 이미지를 다운 받습니다.# 'ubuntu' 이름을 가진 이미지를 다운받습니다.docker pull ubuntu 그럼 이..
프로젝트를 진행하다 보면 여러 개의 Container 올리고 난 후 이들 간, Container IP를 통해 연결하고 통신을 해야 하는 경우가 있습니다. 하지만, Container 특성 상 재기동 하게 되면 Container에 부여된 IP가 계속 변동되기 때문에 하드 코딩으로 IP를 지정하기 어렵습니다.따라서, Container의 IP가 변동되지 않도록 컨테이너의 정적 IP를 설정 해주어야 합니다.고정 IP 지정법1. Gateway와 Subnet을 지정docker network create --gateway 172.19.0.1 --subnet 172.19.0.0/21 tcnet 2. 자동 지정docker network create --driver bridge tcnet생성한 Network 확인하기dock..
컨테이너의 데이터 저장 방식Container의 데이터는 휘발성입니다. 즉, Contianer가 삭제되면 그 안의 데이터도 사라집니다. Database를 컨테이너 내부에 저장하면 컨테이너가 삭제되거나 재시작 될 때 손실됩니다.데이터 영속성을 위한 방법휘발성의 데이터들이 사라지지 않게 하기 위해 사용하는 방법에는 2가지가 있습니다. 1. Docker Volume 사용하기Docker Volume을 사용하면 데이터가 Container의 생명 주기와 상관없이 저장됩니다. 따라서 Container를 실행할 때 Volume을 마운트하여 데이터베이스의 데이터를 영속적으로 저장할 수 있습니다.단, 해당 데이터는 Local 환경에서만 저장되기 때문에 다른 환경과는 공유가 어렵습니다.docker run -d --name..
우선 Docker를 이해하기 위해선 컨테이너(=Container)에 대해 알아야합니다.컨테이너(=Container)소프트웨어는 OS와 Library마다 의존성을 갖고 있습니다. 따라서, 한 컴퓨터에서 성격이 다른 (OS, Library가 다른) 소프트웨어를 한번에 실행할 때 어려움을 가질 수 있고 관련된 구성을 관리하기 어렵습니다. 이러한 문제점을 해결해주는 기술이 바로 컨테이너입니다. 컨테이너는 Application을 실행하는 데 필요한 모든 구성 요소를 하나의 런타임 환경으로 묶는데 사용하는 기술입니다. 또한, 다른 실행 환경과의 간섭을 막고 실행의 독립성을 확보해주는 운영체계 수준의 격리 기술을 이야기합니다. 가상 머신(VM)과 컨테이너의 차이Virtual Machine은 Host OS 위에 가상..
- Total
- Today
- Yesterday