Docker는 패키징을 어떻게 구현하나요?
Docker 관련 용어:
(1). 거울, 컨테이너, 창고
Docker의 특성:
(1) 키워드: 컨테이너, 표준.
Docker 배포 연습:
1. Dockerfile 만들기
제가 언급한 가정에 주의하세요. jar 패키지 또는 war 패키지가 성공적으로 패키징되었으며 docker가 성공적으로 설치되었습니다.
dockerfile의 내용은 다음과 같습니다.
FROM azul/zulu-openjdk:8 VOLUME /home/work/springDemo ADD springDemo-0.0.1-SNAPSHOT.jar app.jar RUN bash -c 'touch /app.jar' ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
FROM: 어떤 미러를 기반으로 하는지
VOLUME: 로컬 폴더나 다른 컨테이너 폴더를 컨테이너에 마운트할 수 있습니다.
ADD:
에 해당하는 경로 RUN: RUN 명령은 현재 이미지에서 합법적인 명령을 실행하고 실행 결과를 제출합니다. 명령 실행이 제출되면 Dockerfile의 다음 명령이 자동으로 실행됩니다.
ENTRYPOINT: 컨테이너가 시작될 때 실행되는 명령이지만 Dockerfile에는 ENTRYPOINT 명령이 하나만 있을 수 있습니다. 실행됩니다
요점: dockerfile 및 jar 패키지 또는 war 패키지의 위치
참고: 새로 생성된 Dockerfile 파일은 jar과 동일한 폴더에 있어야 합니다.
2. Jar 패키지 생성
위 그림에서 .jar 패키지를 보면 헷갈릴 수 있습니다. 이 패키지는 어떻게 생성되나요? 이 패키지가 어떻게 생성되는지 살펴보겠습니다.
프로젝트를 Maven으로 구축했으니, 물론 Maven이 여러분의 환경에 설치되어 있다는 전제는 있습니다.
위 작업이 끝나면 jar 패키지가 빌드됩니다.
3. 이미지 생성
쉘 명령 설명: 핵심은 Dockerfile 및 jar 패키지 또는 war 패키지가 저장된 폴더에 CD를 넣어야 한다는 것입니다.
명령:sudo docker build -t springbootdemo .
sudo docker build -t springbootdemo .
注意:命令后面的 . 要带上 。
-t参数的含义我记不清了,你可以通过 sudo docker build --help 来查看相关函数的解释。 springbootdemo是build的镜像名称。
以上操作完成了Docker 镜像的创建。检验镜像是否创建成功,命令: sudo docker images ,可以看到springbootdemo就是刚才创建的镜像。
4.启动容器
容器其实也相当与镜像的载体。
容器的启动命令截图:
启动命令:sudo docker run -d -p 8080:8080 springbootdemo
-d -p 的参数含义我也忘却了,大家可以查查。 8080:8080是一个端口的映射,它的具体逻辑和原理,我建议大家学习Docker中仔细看看,springbootdemo 就是我上面提到的镜像文件。
查看当前运行中的容器:sudo docker ps
-t 매개변수의 의미가 기억나지 않습니다. sudo docker build --help를 통해 관련 기능에 대한 설명을 볼 수 있습니다. springbootdemo는 빌드의 이미지 이름입니다.
위 작업으로 Docker 이미지 생성이 완료됩니다. 이미지가 성공적으로 생성되었는지 확인하고, sudo docker Images 명령을 실행하면 springbootdemo가 방금 생성된 이미지임을 확인할 수 있습니다.4. 컨테이너 시작 컨테이너는 실제로 미러 캐리어와 동일합니다. 컨테이너 시작 명령 스크린샷:
시작 명령:sudo docker run -d -p 8080:8080 springbootdemo
-d -p 매개변수의 의미도 잊어버렸습니다. 확인해 보세요. 8080: 8080은 포트 매핑입니다. Docker를 배우고 자세히 살펴보는 것이 좋습니다. springbootdemo는 위에서 언급한 이미지 파일입니다. 현재 실행 중인 컨테이너 보기:
sudo docker ps
5. 확인 확인 링크에서 jar 패키지 또는 war 패키지가 성공적으로 배포되었는지 확인할 수 있습니다. 저처럼 웹 프로그램이라면 브라우저를 통해 테스트해 볼 수 있습니다. 관련 권장 사항: docker 튜토리얼
위 내용은 docker가 패키징을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!