본문 바로가기

반응형

가상 머신/Docker

(27)
[ Docker ] 내 docker에 자동 실행 기능 추가하기 🌱 Docker 이미지를 만드는 방법은 크게 Dockerfile을 작성하고, 그 파일을 사용하여 이미지를 빌드하는 과정으로 나눌 수 있습니다. 여기에 간단한 예시를 들어 설명드리겠습니다.  1단계: start-script.sh 작성Container에 접속: 개발중인 container에 접속해서 '/' 폴더에 start-script.sh를 작성합니다.docker exec -it jolly_jones bashstart-script.sh를 작성편집기를 열어서 start-script.sh에 아래 내용으로 파일을 작성합니다.vim /start-script.shstart-script.sh 파일 내용#!/bin/bash/root/start-myservice.sh # 개발한 프로그램을 실행 시킨다.실행 권한을 설정합..
[ Docker ] build 명령어로 나만의 이미지 만들기 Docker 이미지를 만드는 방법은 크게 Dockerfile을 작성하고, 그 파일을 사용하여 이미지를 빌드하는 과정으로 나눌 수 있습니다. 여기에 간단한 예시를 들어 설명드리겠습니다.  1단계: Dockerfile 작성Dockerfile은 Docker 이미지를 빌드하기 위한 스크립트로, 필요한 모든 명령어와 설정을 포함합니다. 가장 기본적인 Dockerfile은 다음과 같습니다:기본 이미지 지정: 모든 Docker 이미지는 기본 이미지에서 시작합니다. 이는 OS 또는 미리 구성된 다른 이미지일 수 있습니다. FROM ubuntu:20.04환경 설정: 필요한 패키지 설치, 환경 변수 설정 등의 초기 설정 작업을 수행합니다.예로 nginx가 설치된 이미지를 만듭니다. RUN apt-get update..
[ Docker ] Docker root 폴더 변경하기 Docker의 루트 폴더를 변경하는 것은 Docker 데이터를 다른 드라이브나 위치로 옮기기 위해 필요할 수 있습니다. 기본적으로 Docker는 /var/lib/docker에 모든 데이터를 저장하지만, 디스크 공간 문제 등의 이유로 이 위치를 변경할 필요가 있을 수 있습니다. 다음은 Linux 시스템에서 Docker의 루트 디렉토리를 변경하는 방법을 단계별로 설명합니다. Docker 서비스 중지Docker가 실행 중인 모든 작업이 중단되고 데이터가 손실되지 않도록 Docker 서비스를 중지합니다. sudo systemctl stop docker 기존 Docker 디렉터리 데이터 복사기존 Docker 데이터를 새 위치로 복사합니다. 예를 들어, 새로운 디렉토리가 /new/path/docker라고 가정할..
[ Docker ] 도커 시작시 Port 포워딩 설정하기 RHEL에서 특정 포트를 Docker 컨테이너의 특정 포트로 포워딩하는 방법은 Docker의 -p 옵션을 사용하여 호스트의 포트를 컨테이너의 포트에 연결하는 방식입니다. 이 과정은 Docker를 실행할 때 지정할 수 있습니다. 1. Docker 실행 시 포트 포워딩 설정Docker에서 특정 포트를 컨테이너의 포트로 포워딩하려면, docker run 명령어에 -p 옵션을 사용합니다. -p 옵션의 형식은 :입니다.예를 들어, 호스트의 8080 포트를 Docker 컨테이너의 80 포트로 포워딩하려면 다음과 같이 실행합니다.sudo docker run -d -p 8080:80 이 명령어는 호스트의 8080 포트로 들어오는 트래픽을 컨테이너의 80 포트로 전달합니다. 2. docker-compose를 사용하여 포..
[ Docker ] save - Container 작업 후 이미지로 저장 후 이미지로 읽어 들이기 Docker에서 저장된 이미지와 컨테이너를 읽어들이고 사용하는 방법은 다음과 같습니다:1. Docker 이미지 저장하고 읽어들이기Docker container를 먼저 이미지로 commit 합니다.Docker 이미지는 docker save 명령으로 파일로 저장하고, docker load 명령으로 다시 읽어들일 수 있습니다.**컨테이너를 새로운 이미지로 저장테그는 새로운 버전이 될 수 있거나 특정 의미를 가진 이름이 될 수 있습니다.docker commit :예:docker commit my_running_container my_new_image:latest이미지를 저장하는 방법docker save -o :예:docker save -o my_image.tar my_app:latest저장한 이미지를 읽어들..
[ Docker ] docker rm - 모든 컨테이너 중지하기 후 삭제하기 docker rm 명령어를 사용하여 모든 컨테이너를 삭제하려면, 실행 중인 컨테이너를 먼저 중지해야 합니다. 아래 단계에 따라 진행하세요: 1. 실행 중인 컨테이너 중지docker stop $(docker ps -aq)docker ps -aq: 모든 컨테이너의 ID를 출력합니다.docker stop: 해당 ID의 컨테이너를 중지합니다. 2. 모든 컨테이너 삭제docker rm $(docker ps -aq)docker rm: 컨테이너 ID를 전달받아 삭제합니다.한 줄로 실행실행 중인 컨테이너를 중지하고 삭제하는 명령어를 한 번에 실행하려면:docker rm -f $(docker ps -aq)-f: 실행 중인 컨테이너를 강제로 중지하고 삭제합니다.참고컨테이너뿐만 아니라 이미지나 볼륨도 정리하려면 아래 명령을..
[ Docker ] Container 저장하기 Docker에서 컨테이너를 "저장"하는 방법은 여러 가지가 있지만, 일반적으로는 컨테이너의 상태를 저장하거나 컨테이너의 이미지를 만들기 위한 방법을 사용합니다. 주요 방법은 아래와 같습니다: 1. 컨테이너 상태를 이미지로 저장 (커스텀 이미지 만들기)컨테이너에서 변경된 내용을 이미지로 저장하려면, docker commit 명령어를 사용하여 해당 컨테이너의 상태를 새로운 이미지로 저장할 수 있습니다. 예를 들어, my_container라는 이름의 컨테이너에서 상태를 이미지로 저장하려면:docker commit my_container my_new_image이렇게 하면 my_container의 상태가 my_new_image라는 새로운 이미지로 저장됩니다. 2. 컨테이너 데이터를 저장 (볼륨 사용)컨테이너 내의..
[ Docker ] save, export - 도커 이미지, 파일 시스템 저장하기 docker save와 docker export는 둘 다 Docker 이미지나 컨테이너의 데이터를 파일로 저장하는 명령어이지만, 그 목적과 사용 방법에는 차이가 있습니다.1. docker save목적: Docker 이미지를 아카이브 파일로 저장하는 데 사용됩니다.사용 대상: Docker 이미지.파일 형식: tar 형식으로 이미지를 저장합니다.특징:docker save 명령어는 Docker 이미지를 포함하는 모든 레이어와 메타데이터를 저장합니다.저장된 파일을 다른 시스템에서 docker load 명령으로 불러와 사용할 수 있습니다.이 방식은 이미지 전체를 보존하며, 그 안에 포함된 모든 설정(예: 환경 변수, 레이어 정보 등)을 유지합니다.예시:docker save -o my_image.tar my_ima..

반응형