"안녕하세요!"Docker 컨테이너 사용
Docker 컨테이너란 무엇입니까?
소프트웨어의 표준화된 단위, Docker-website .
이것은 기본적으로 우리의 코드 베이스와 필요한 모든 종속성을 래핑하여 현재 실행 중인 운영 체제(OS)와 독립적인 격리된 환경에서 우리의 애플리케이션을 실행하여 표시된 것과 같이
Docker-engine
위에 실행되는 크로스 플랫폼 애플리케이션을 가능하게 합니다. 아래 그림에서:컨테이너 대 VM
컨테이너는 VM(가상 머신)이 제공하는 모든 기능을 제공하지만 전체 OS를 실행하는 비용은 없습니다. 아래 그림을 참조하세요.
도커파일
Node.js를 사용하는 간단한 컨테이너
Dockerfile
를 사용하여 간단한 컨테이너를 빌드해 보겠습니다.메모:
단계
1- 선택한 작업 공간에 새 디렉토리를 만들고 다음 명령을 실행하여 해당 디렉토리로 이동합니다.
mkdir my-container && cd my-container
2- OS에서 도커 서비스 실행
sudo service docker start
3- Dockerfile 만들기
touch Dockerfile
4- 코드 편집기를 사용하여 Dockerfile을 엽니다. 제 경우에는 VSCode가 됩니다.
# Pull ready-made node image from Docker Hub, using the format <image-name>:<image-version>
FROM node:12-alpin
# By default, Docker runs a container as a root user which is considered to be a security issue so, we need to run the commands as an unprivileged user whenever it is possible.
# Node Image writers created a special user `node` for security purposes so, let us use it to run our commands within our container
USER node
# Set the working directory within the container
WORKDIR /home/node/code
# Copy the `index.js` to the working directory using permissions flag `--chown:<user>:<group>`
COPY --chown=node:node index.js index.js
# Run the command `node` with `index.js` as a parameter which means simple `node indexjs`
CMD [ "node", "index.js" ]
5-
index.js
파일 생성:touch index.js
6- 좋아하는 코드 편집기를 사용하여 열기
index.js
code index.js
7- 단순히 "Hello World!"를 인쇄하는 코드 스니펫을 파일 내에 붙여넣습니다.
const http = require("http");
http.createServer(function (request, response) {
console.log("request received");
response.end("Hello World!", "utf-8");
}).listen(3000);
console.log("server started");
8- 컨테이너를 만들고 태그를 지정합니다. containerID 또는 easyness 대신 컨테이너를 참조하도록 태그를 지정합니다.
docker build -t alpine-simple-app .
9- 빌드된 컨테이너를 실행합니다.
docker run --init --rm -p 3000:3000 alpine-simple-app
--rm
컨테이너가 존재하면 자동으로 삭제하도록 Docker에 지시합니다.--init
는 초기화 프로세스가 "Ctrl+c
때 컨테이너를 중지하는 데 사용되는"컨테이너의 PID 1로 사용되어야 함을 나타냅니다. 자세한 내용은 link을 참조하십시오.-p
컨테이너의 포트를 호스트 시스템에 게시합니다<Docker_host_port>:<container_port>
.10- 브라우저로 이동하여 URL을 엽니다.
[localhost:3000](http://localhost:3000/)
다음 메시지가 표시되어야 합니다.
완료되었습니다! 컨테이너 내에서
Node.js
앱을 실행할 수 있었습니다!제 글이 도움이 되고 즐거웠기를 바랍니다! 그의 훌륭한 설명에 특별히 감사드립니다.
참고: 모든 수치는 Docker의 신용입니다.
추가 질문이 있으시면 주저하지 마시고 로 연락해 주십시오.
Reference
이 문제에 관하여("안녕하세요!"Docker 컨테이너 사용), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/hazemalabiad/simple-hello-world-using-docker-containers-1lfl텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)