Triển khai ứng dụng Node.js bằng Docker

Bài viết này sẽ chỉ cho bạn cách triển khai ứng dụng Node của bạn trong bộ chứa Docker.

Lưu ý: Hướng dẫn này giả định rằng bạn đã cài đặt Docker và sẵn sàng để sử dụng.

Bước 1: Tạo ứng dụng Nút của bạn

Tạo một thư mục gọi là src. Chúng tôi sẽ sử dụng thư mục đó. Tạo một tệp có tên src/package.jsonnhư sau:

{
  "name": "hello_world",
  "private": true,
  "version": "0.0.1",
  "description": "Hello world Example",
  "author": "",
  "dependencies": {
        "express": "3.2.4"
   }
}

Bây giờ tạo một src/index.jschứa như sau:

var express = require('express');
var app = express();
app.get('/', function (req, res) {
    res.send('Hello from Docker\n');
});

app.listen(8080);
console.log('Running on http://localhost:8080');

Xin lưu ý rằng bạn có thể thay đổi cổng 8080thành bất cứ điều gì bạn muốn, nhưng với ví dụ này, chúng tôi sẽ đưa ra cổng này để sử dụng cho ứng dụng của chúng tôi. Khi bạn đã tạo hai tệp này, bạn có thể tiến hành bước tiếp theo.

Bước 2: Tạo Dockerfile

"Dockerfile" cho phép bạn xây dựng và triển khai hình ảnh Docker dựa trên bộ hướng dẫn bạn đã cung cấp trong đó. Tạo một tệp có tên Dockerfilevà điền vào đó với nội dung sau:

FROM centos:latest
MAINTAINER Name Here <username@localhost>
RUN rpm -Uvh http://mirror.pnl.gov/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
RUN yum install nodejs npm -y 
COPY ./src /opt/src
RUN cd /opt/src; npm install
EXPOSE 8080
CMD ["node", "/opt/src/index.js"]

Giải trình:

FROM centos:latest

Điều này sẽ sử dụng một hình ảnh được gọi là centos. Nếu không có hình ảnh có sẵn trên máy chủ của bạn, Docker sẽ lấy một cái từ kho lưu trữ của nó.

MAINTAINER Name Here <username@localhost>

Hướng dẫn này cho phép bạn đặt tác giả cho hình ảnh được tạo.

RUN rpm -Uvh http://mirror.pnl.gov/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
RUN yum install nodejs npm -y
…
RUN cd /opt/src; npm install

"CHẠY" sẽ thực thi các lệnh shell được đưa ra. Trong ví dụ này, nó sẽ tải xuống vòng / phút phát hành epel và cài đặt nó, đồng thời cài đặt nodejs và npm từ kho lưu trữ của nó. Sau thao tác tiếp theo, nó sẽ cd vào thư mục dự án và chạy npm installđể cài đặt các phụ thuộc cho ứng dụng của bạn.

COPY ./src /opt/src

Sao chép thư mục (và tệp) từ máy chủ lưu trữ vào thùng chứa.

EXPOSE 8080

Mở cổng 8080 cho thế giới bên ngoài sử dụng.

CMD ["node", "/opt/src/index.js"]

CMD sẽ cung cấp thực thi mặc định cho container.

Khi bạn đã tạo tệp chính xác như cách nó được hiển thị ở trên, bạn có thể tiến hành bước tiếp theo.

Bước 3: Xây dựng hình ảnh

Để xây dựng hình ảnh của bạn, hãy chạy lệnh sau:

docker build -t name/application .

Điều này sẽ tạo ra một hình ảnh với một tên kho lưu trữ của name/application. Nếu không có lỗi, bạn có thể tiến hành bước tiếp theo.

Bước 4: Triển khai và kiểm tra ứng dụng

Bây giờ mọi thứ đã được thiết lập, bạn có thể chạy hình ảnh của mình bằng cách chạy như sau:

docker run -p 49160:8080 -d name/application

Để kiểm tra ứng dụng của bạn, hãy chạy lệnh sau từ máy chủ:

curl http://172.17.42.1:49160/ 

Nếu bạn thấy Hello from Dockerthì bạn đã triển khai thành công hình ảnh Docker của bạn. Nếu bạn muốn kiểm tra điều này với trình duyệt của mình, hãy truy cập http://[SERVER_IP]:49160từ bên trong trình duyệt của bạn (thay thế địa chỉ IP tương ứng) và bạn sẽ thấy thông báo tương tự.



Leave a Comment

Trên CoreOS, hướng dẫn thiết lập đăng ký Docker của riêng bạn

Trên CoreOS, hướng dẫn thiết lập đăng ký Docker của riêng bạn

Chúng ta đều biết và yêu thích Docker, một nền tảng để tạo, quản lý và phân phối các thùng chứa ứng dụng trên nhiều máy. Docker Inc. cung cấp dịch vụ lưu trữ các thùng chứa nguồn mở sẽ được tải xuống (hoặc kéo) như kho lưu trữ git được gọi là Docker Registry . Hãy nghĩ về nó giống như một GitHub cho các container Docker.

Cách sử dụng Docker: Tạo Container Docker đầu tiên của bạn

Cách sử dụng Docker: Tạo Container Docker đầu tiên của bạn

Hướng dẫn này giải thích những điều cơ bản khi bắt đầu với Docker. Tôi giả sử rằng bạn đã cài đặt Docker. Các bước trong hướng dẫn này sẽ hoạt động trên mọi bản phân phối Linux tương thích với Docker (CentOS, Ubuntu, v.v.).

Cài đặt Docker trên Ubuntu 14.04

Cài đặt Docker trên Ubuntu 14.04

Sử dụng một hệ thống khác nhau? Docker là một ứng dụng cho phép triển khai các chương trình được chạy dưới dạng container. Nó được viết trong chương trình phổ biến Go

Cài đặt Docker trên CentOS 7

Cài đặt Docker trên CentOS 7

Sử dụng một hệ thống khác nhau? Docker là một ứng dụng cho phép triển khai phần mềm trong các thùng chứa ảo. Nó được viết trong chương trình Go

Bắt đầu với Kubernetes trên CentOS 7

Bắt đầu với Kubernetes trên CentOS 7

Kubernetes là một nền tảng nguồn mở được phát triển bởi Google để quản lý các ứng dụng được đóng gói trên một cụm máy chủ. Nó được xây dựng trên một thập kỷ và

Cân bằng tải với Docker

Cân bằng tải với Docker

Khi chạy một ứng dụng web, thông thường bạn muốn tận dụng tối đa tài nguyên của mình mà không phải chuyển đổi phần mềm để sử dụng các vòng lặp sự kiện đa luồng hoặc phức tạp. Docker, tuy nhiên, cung cấp một cách đơn giản để bạn tải cân bằng nội bộ ứng dụng của mình để tận dụng tối đa tài nguyên máy chủ. Bài viết này sẽ chỉ cho bạn cách sử dụng Nginx để tải cân bằng ứng dụng web của bạn bằng Docker trên CentOS.

Cài đặt hệ điều hành Rancher qua iPXE

Cài đặt hệ điều hành Rancher qua iPXE

Rancher OS là một bản phân phối Linux rất nhẹ được xây dựng xung quanh Docker. Hệ điều hành tự nó nặng khoảng 20 MB. Hướng dẫn này sẽ giúp bạn khởi động và chạy với HĐH Rancher bền bỉ bằng cách sử dụng tất cả dung lượng đĩa trống. Hướng dẫn cấu hình đám mây không được bao gồm trong tài liệu này.

ReactOS: Đây có phải là tương lai của Windows?

ReactOS: Đây có phải là tương lai của Windows?

ReactOS, một hệ điều hành mã nguồn mở và miễn phí đã có phiên bản mới nhất. Liệu nó có thể đáp ứng đủ nhu cầu của người dùng Windows hiện đại và hạ gục Microsoft? Hãy cùng tìm hiểu thêm về trải nghiệm hệ điều hành kiểu cũ nhưng mới hơn này.

Liệu AI có thể chiến đấu với số lượng các cuộc tấn công bằng Ransomware ngày càng tăng

Liệu AI có thể chiến đấu với số lượng các cuộc tấn công bằng Ransomware ngày càng tăng

Các cuộc tấn công ransomware đang gia tăng, nhưng liệu AI có thể giúp đối phó với loại virus máy tính mới nhất? AI có phải là câu trả lời? Đọc ở đây biết là AI boone hay cấm

Luôn kết nối thông qua Ứng dụng WhatsApp Desktop 24 * 7

Luôn kết nối thông qua Ứng dụng WhatsApp Desktop 24 * 7

Whatsapp cuối cùng đã ra mắt ứng dụng Máy tính để bàn cho người dùng Mac và Windows. Giờ đây, bạn có thể truy cập Whatsapp từ Windows hoặc Mac một cách dễ dàng. Có sẵn cho Windows 8+ và Mac OS 10.9+

Làm thế nào AI có thể đưa quá trình tự động hóa lên cấp độ tiếp theo?

Làm thế nào AI có thể đưa quá trình tự động hóa lên cấp độ tiếp theo?

Hãy đọc phần này để biết Trí tuệ nhân tạo đang trở nên phổ biến như thế nào đối với các công ty quy mô nhỏ và làm thế nào nó đang tăng khả năng khiến họ phát triển và giúp đối thủ cạnh tranh của họ có thể cạnh tranh.

Bản cập nhật bổ sung macOS Catalina 10.15.4 đang gây ra nhiều vấn đề hơn là giải quyết

Bản cập nhật bổ sung macOS Catalina 10.15.4 đang gây ra nhiều vấn đề hơn là giải quyết

Gần đây Apple đã phát hành macOS Catalina 10.15.4 một bản cập nhật bổ sung để khắc phục các sự cố nhưng có vẻ như bản cập nhật đang gây ra nhiều vấn đề hơn dẫn đến việc máy mac bị chai. Đọc bài viết này để tìm hiểu thêm

13 Công cụ trích xuất dữ liệu thương mại của Dữ liệu lớn

13 Công cụ trích xuất dữ liệu thương mại của Dữ liệu lớn

13 Công cụ trích xuất dữ liệu thương mại của Dữ liệu lớn

Hệ thống tệp nhật ký là gì và nó hoạt động như thế nào?

Hệ thống tệp nhật ký là gì và nó hoạt động như thế nào?

Máy tính của chúng tôi lưu trữ tất cả dữ liệu một cách có tổ chức được gọi là hệ thống tệp Ghi nhật ký. Đây là một phương pháp hiệu quả cho phép máy tính tìm kiếm và hiển thị các tệp ngay khi bạn nhấn tìm kiếm. Https://wethegeek.com/? P = 94116 & preview = true

Điểm kỳ dị về công nghệ: Tương lai xa của nền văn minh nhân loại?

Điểm kỳ dị về công nghệ: Tương lai xa của nền văn minh nhân loại?

Khi Khoa học phát triển với tốc độ nhanh chóng, chiếm rất nhiều nỗ lực của chúng ta, những rủi ro của việc phục tùng bản thân trước một Điểm kỳ dị không thể giải thích cũng tăng lên. Hãy đọc, điểm kỳ dị có thể có ý nghĩa gì đối với chúng ta.

Hiểu rõ hơn về 26 kỹ thuật phân tích dữ liệu lớn: Phần 1

Hiểu rõ hơn về 26 kỹ thuật phân tích dữ liệu lớn: Phần 1

Hiểu rõ hơn về 26 kỹ thuật phân tích dữ liệu lớn: Phần 1

Tác động của trí tuệ nhân tạo trong chăm sóc sức khỏe 2021

Tác động của trí tuệ nhân tạo trong chăm sóc sức khỏe 2021

AI trong lĩnh vực chăm sóc sức khỏe đã có những bước tiến nhảy vọt so với những thập kỷ trước. Vì vậy, tương lai của AI trong Chăm sóc sức khỏe vẫn đang phát triển từng ngày.