Docker를 사용하여 Java를 통해 Node.js용 Aspose.Slides 설치

전제 조건:

  • 머신에 Docker를 설치하십시오. 공식 설치 가이드를 here에서 확인할 수 있습니다.

단계:

1. Dockerfile 만들기

프로젝트 디렉터리에 Dockerfile이라는 새 파일을 생성하고 다음 내용을 넣으십시오:

# Ubuntu 20.04를 기본 이미지로 사용합니다
FROM ubuntu:20.04

# 패키지 목록을 업데이트하고 저장소 추가 및 파일 다운로드에 필요한 필수 패키지를 설치합니다
RUN apt-get update && \
   apt-get install -y curl gnupg2 software-properties-common && \
   rm -rf /var/lib/apt/lists/*

# Nodesource 저장소에서 Node.js 버전 18.x를 설치합니다
RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash - && \
   apt-get install -y nodejs && \
   rm -rf /var/lib/apt/lists/*

# node-gyp와 같은 일부 npm 패키지에 필요한 Python 2.x를 설치합니다
RUN apt-get update && \
   apt-get install -y python2 && \
   rm -rf /var/lib/apt/lists/*

# Aspose.Slides의 Java 종속성에 필요한 OpenJDK 11을 설치합니다
RUN apt-get update && \
   apt-get install -y openjdk-11-jdk && \
   rm -rf /var/lib/apt/lists/*

# 네이티브 모듈 빌드에 필요한 'make'와 같은 도구를 포함하는 build-essential 패키지를 설치합니다
RUN apt-get update && \
   apt-get install -y build-essential && \
   rm -rf /var/lib/apt/lists/*

# Node.js용 네이티브 애드온을 컴파일하는 데 사용되는 도구인 node-gyp를 전역으로 설치합니다
RUN npm install -g node-gyp

# 컨테이너 내부 작업 디렉터리를 /app으로 설정합니다
WORKDIR /app

# 필요한 세부 정보와 종속성을 포함한 package.json 파일을 생성합니다
RUN echo '{\n\
  "name": "aspose-slides-app",\n\
  "version": "1.0.0",\n\
  "main": "index.js",\n\
  "scripts": {\n\
   "start": "node index.js"\n\
  },\n\
  "dependencies": {\n\
   "aspose.slides.via.java": "^25.12.0"\n\
  }\n\
}' > package.json

# Aspose.Slides를 사용하여 프레젠테이션을 생성하는 샘플 코드를 포함한 index.js 파일을 생성합니다
RUN echo 'const slides = require("aspose.slides.via.java");\n\
var presentation = new slides.Presentation();\n\
var slide = presentation.getSlides().get_Item(0);\n\
slide.getShapes().addAutoShape(slides.ShapeType.Line, 50, 150, 300, 0);\n\
presentation.save("./NewPresentation.pptx", slides.SaveFormat.Pptx);\n\
console.log("Script completed, please check file /app/NewPresentation.pptx!");' > index.js

# package.json에 지정된 Aspose.Slides via Java 패키지를 설치합니다
RUN npm install aspose.slides.via.java

# 컨테이너 시작 시 애플리케이션을 실행하도록 기본 명령을 설정합니다
CMD ["node", "index.js"]

2. Docker 이미지 빌드

Dockerfile이 있는 디렉터리에서 다음 명령을 실행하여 Docker 이미지를 빌드하십시오:

docker build -t aspose-slides-nodejs .

3. Docker 컨테이너 실행

컨테이너를 실행하고 ID를 저장하십시오:

CONTAINER_ID=$(docker create aspose-slides-nodejs)
docker start -a $CONTAINER_ID

4. Docker에서 Aspose.Slides에 액세스

컨테이너를 시작한 후 스크립트가 PPTX 파일을 생성합니다. 생성된 출력 파일 NewPresentation.pptx는 컨테이너 내부의 /app 폴더에서 찾을 수 있습니다:

docker cp $CONTAINER_ID:/app/NewPresentation.pptx ./NewPresentation.pptx

임시 컨테이너를 제거하십시오:

docker rm $CONTAINER_ID