IRONSOFTWAREHOME

.NET 용 Iron Suite

10개의 .NET 라이브러리. 완전한 문서 슈트

IRONSECUREDOC 사용

Docker 이미지에서 컨테이너 시작하기 (개발자 튜토리얼)

Curtis Chau
Curtis Chau
Updated: 2026년 5월 8일

Docker란?

Docker는 경량, 휴대 가능한 컨테이너 내에서 애플리케이션을 자동으로 배포 및 관리하는 오픈 소스 플랫폼입니다. 컨테이너는 라이브러리 및 구성 파일을 포함한 애플리케이션과 그 종속성을 패키징하여 여러 환경에서 일관되게 실행될 수 있습니다. 이 일관성은 개발과 테스트를 단순화하여 애플리케이션이 개발자의 노트북, 서버 또는 클라우드 환경에서 동일하게 실행될 수 있도록 합니다. 애플리케이션 관리에서의 확장성은 컨테이너를 효율적으로 개발, 배포 및 실행하는 것을 의미하며, 이는 Docker가 촉진합니다.

Docker 이미지에서 컨테이너 시작 (개발자 튜토리얼): 그림 1 - Docker

Docker 이미지는 개발자에게 일관된 런타임 환경의 명세를 훨씬 쉽게 만듭니다. 대부분의 미리 빌드된 이미지는 Docker Hub라는 오픈 레지스트리에서 찾을 수 있으며, 개발자들은 이를 직접 사용하거나 사용자 지정할 수 있습니다. 여러 컨테이너가 포함된 애플리케이션의 경우 Docker Compose와 같은 도구가 컨테이너를 조율하며, Kubernetes는 더욱 복잡한 확장 및 자동화를 관리할 수 있습니다. Docker는 소프트웨어 개발 및 DevOps에서 필수 도구가 되었습니다.

Docker 컨테이너란?

Docker 컨테이너는 기본적으로 라이브러리, 바이너리, 구성 파일 등의 모든 종속성을 가진 애플리케이션을 경량의 독립 실행형 실행 가능 엔티티로 패키징한 것입니다. 고립 상태에서 설계된 컨테이너는 호스트 운영 체제의 커널 위에서 실행되어 다른 실행 중인 소프트웨어의 간섭을 피합니다. 시작, 중지 또는 삭제가 용이하여 테스트, 배포 및 스케일링에 이상적입니다.

Docker 컨테이너 기능

  • 격리: 컨테이너는 격리된 환경에서 실행됩니다; 애플리케이션들은 서로 다른 종속성 또는 라이브러리 세트를 사용하더라도 충돌하지 않습니다.
  • 경량: 컨테이너는 호스트 운영 체제의 커널을 공유하므로 용량이 작고 VM보다 빠른 시작 시간을 가지고 있습니다.
  • 휴대성: 컨테이너는 결정적이며 Docker를 사용하는 모든 시스템에서 실행될 수 있어 개발, 테스트 및 프로덕션 환경 전반에서 일관성을 보장합니다.
  • 확장성: 컨테이너는 쉽게 복제 및 확장될 수 있으며, 마이크로서비스의 빠른 배포 및 관리를 지원합니다.
  • 자원 효율성: 컨테이너는 VM보다 적은 자원을 사용하여, 더 높은 밀도 및 컴퓨팅 자원 활용의 효율성을 제공합니다.

Docker 이미지란?

Docker 이미지는 컨테이너 생성의 청사진입니다. 읽기 전용이며 계층화되어 있으며 애플리케이션 실행에 필요한 시스템 파일 및 종속성을 상세히 설명합니다. Dockerfile은 소프트웨어 설치나 파일 복사 같은 작업이 포함될 수 있는 Docker 이미지 빌드를 지정하는 데 사용됩니다. Dockerfile의 모든 변경은 새 이미지 레이어를 생성하여 효율성과 모듈성을 유지합니다.

Docker 이미지 기능

  • 다중 레벨 스택: 이미지는 Dockerfiles를 사용하여 레이어로 구성됩니다. Dockerfile의 각 명령어는 레이어를 추가하며, 이미지는 변경된 레이어만 재생성하도록 최적화되어야 합니다.
  • 재사용성: Ubuntu 또는 Node.js와 같은 기본 이미지는 프로젝트 간에 재사용할 수 있으며, 개발 시간과 리소스를 절약할 수 있습니다.
  • 버전관리: 이미지는 태그를 붙여 버전 관리를 할 수 있어 필요 시 이전 버전으로 쉽게 롤백할 수 있습니다.
  • 모듈화: 이미지 변경은 점진적이며, 전체 이미지를 다시 빌드하지 않고 쉽게 업데이트할 수 있습니다.
  • Docker Hub에서 사용 가능: 공용 및 비공용 이미지 레지스트리는 이미지 공유 및 배포를 쉽게 할 수 있도록 합니다.

Docker 컨테이너를 생성하는 방법

Dockerfile은 Docker 이미지를 만들기 위한 명령어를 제공하는 텍스트 파일입니다. 이 파일에서는 기본 이미지, 종속성, 애플리케이션 코드, 환경 변수 및 애플리케이션을 실행할 명령어를 지정합니다. 다음은 간단한 예시입니다:

# Use an official Node.js runtime as a parent image
FROM node:18

# Set the working directory in the container
WORKDIR /app

# Copy package.json and install dependencies
COPY package.json /app
RUN npm install

# Copy the rest of the application code
COPY . /app

# Expose the application’s port
EXPOSE 3000

# Define the command to run the application
CMD ["node", "app.js"]
Text

Docker 이미지 빌드

Dockerfile을 사용하여 Docker 이미지를 생성합니다. 터미널 명령줄에서 Dockerfile이 있는 디렉터리에서 다음을 수행합니다:

아래 명령을 수행하기 전에 Docker Desktop이 설치되어 있어야 합니다.

docker build -t my-app .
SHELL

이 명령은 my-app라는 이름의 이미지를 만듭니다. 생성되었는지 확인하려면 다음을 수행하세요:

docker images
SHELL

Docker 컨테이너 실행

이미지를 사용하면 Docker 컨테이너를 생성하고 docker run 명령을 사용하여 실행할 수 있습니다. Docker 데몬이 시작되어 백그라운드로 실행되는 모드(포그라운드) 또는 전경 모드에서 프로세스를 모니터링합니다.

docker run -d -p 3000:3000 --name my-running-app my-app
SHELL
  • -d: 컨테이너를 분리된 모드로 실행합니다.
  • -p 3000:3000: 호스트의 포트 3000을 컨테이너의 포트 3000에 매핑합니다.
  • --name my-running-app: 사용자 정의 이름을 컨테이너에 할당합니다.

컨테이너 확인

실행 중인 Docker 컨테이너를 확인하려면 다음을 사용하세요:

docker ps
SHELL

Docker 이미지에서 컨테이너 시작 (개발자 튜토리얼): 그림 2 - Docker 컨테이너 실행

위 명령은 컨테이너 ID, 이름, 이미지 이름 등을 포함하여 실행 중인 컨테이너의 세부 정보를 보여줍니다.

컨테이너 중지 및 제거

# Stop container
docker stop dazzling_snyder

# Remove container
docker rm dazzling_snyder
SHELL

Docker 이미지에서 컨테이너 시작 (개발자 튜토리얼): 그림 3 - 컨테이너 정지

IronSecureDoc란?

IronSecureDoc Docker는 Iron Software에서 제공하는 컨테이너화된 문서 처리 솔루션으로, Docker 환경에서 사람의 개입 없이 문서를 자동으로 처리할 수 있습니다. PDF 및 문서 파일에 대해 암호화, 디지털 서명, 복호화, 워터마킹 등을 통해 복잡한 문서 워크플로우와 최대 데이터 보호 기능을 제공합니다. 플랫폼 간 일관되고 확장 가능한 격리된 배포를 보장하여 DevOps 및 CI/CD 파이프라인 통합에 적합합니다.

Docker 이미지에서 컨테이너 시작 (개발자 튜토리얼): 그림 4 - IronSecureDoc: PDF 보안 및 규정 준수 서버

회자동화 및 높은 보안이 필요한 응용 프로그램의 문서 처리 기능을 강화하는 컨테이너화된 접근 방식입니다. IronSecureDoc는 특정 애플리케이션에서 신뢰할 수 있는 자동 문서 처리를 제어되고 이동 가능한 Docker 환경에서 수행할 수 있도록 해줍니다.

IronSecureDoc 설치 및 실행

명령 프롬프트 또는 터미널 창에서 다음 명령을 실행하여 저장소에서 IronSecureDoc Docker 이미지를 다운로드합니다:

docker pull ironsoftwareofficial/ironsecuredoc
SHELL

Docker 이미지에서 컨테이너 시작 (개발자 튜토리얼): 그림 5 - IronSecureDoc 이미지 다운로드

Docker 이미지를 가져온 후 IronSecureDoc 컨테이너를 시작하는 다른 명령을 실행합니다.

IronSecureDoc을 위한 새 컨테이너 생성

docker container run --rm -p 8080:8080 -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
SHELL

위의 docker run 명령은 IronSecureDoc의 컨테이너 인스턴스를 만듭니다.

Docker 이미지에서 컨테이너 시작 (개발자 튜토리얼): 그림 6 - 새 컨테이너

IronSecureDoc 컨테이너 사용

IronSecureDoc를 통해 사용자는 Docker를 설치하고 실행하여 파일을 삭제하거나, 인증하거나, 암호화할 수 있으며 REST API를 통해 이를 수행할 수 있습니다.

Docker 이미지에서 컨테이너 시작 (개발자 튜토리얼): 그림 7 - SecureDoc 웹 API

예를 들어, 문서를 암호화하려면 IronSecureDoc API에 POST 요청을 보낼 수 있습니다.

curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'
SHELL

이렇게 하면 문서가 IronSecureDoc로 전달되어 데이터를 처리하고 적절히 암호화합니다.

결론

간단히 말해서, Docker는 개발자가 이미지를 기준으로 컨테이너를 만들어 휴대 가능하고 확장 가능한 환경에서 균일성을 보장하기 때문에 애플리케이션 배포를 단순화합니다. 이는 플랫폼 간의 애플리케이션 실행을 효율적으로 수행하며 리소스 활용을 촉진하여 DevOps 및 CI/CD 파이프라인을 향상시킵니다.

같은 방식으로, IronSecureDoc Docker는 Docker의 컨테이너화된 아키텍처를 활용하여 안전한 자동 문서 처리 솔루션을 제공합니다. Docker와 IronSecureDoc는 현대 소프트웨어 개발에서 안전하고 확장 가능한 애플리케이션을 빌드할 수 있는 강력한 도구를 제공합니다. IronSecureDoc의 라이선스에 관한 더 많은 정보를 원하시면, 이 라이선스 페이지를 클릭하여 확인하시고, Iron Software의 다양한 제품에 대한 세부 정보를 보려면 라이브러리 스위트 페이지를 방문하세요.

Key in blue circle

무료 30일 체험 키를 즉시 받으세요.

Your trial license will be sent to your email address

제한 없음. 100% 무제한 이용. 신용카드 불필요.

OR
bullet_checked신용카드나 계정 생성은 필요하지 않습니다.제한 없음. 100% 무제한 이용. 신용카드 불필요.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronSecureDoc
무료 라이브 데모를 예약하세요
Booking Badge

전 세계 수백만 엔지니어들이 신뢰하는 제품입니다.

Iron Software의 고객 로고
부담 없는 무료 상담을 받아보세요
아래 양식을 작성하시거나 sales@ironsoftware.com으로 이메일을 보내주세요.
고객님의 정보는 항상 비밀로 유지됩니다.
전 세계 수백만 엔지니어들이 신뢰하는 제품입니다.
Iron Software의 고객 로고
지금 바로 30일 무료 체험판 키를 받으세요.
신용카드나 계정 생성은 필요하지 않습니다.