Thứ tư, 21/08/2013 | 00:00 GMT+7

Cách biên dịch Node.js với NPM từ nguồn trên CentOS 6


Giới thiệu

(Tại thời điểm viết bài này, bản phát hành ổn định hiện tại là v0.10.15 cho Node.js và 1.3.5 cho NPM)

Bây giờ việc biên dịch Node.js từ nguồn có vẻ hơi khó khăn. Sau cùng, nó thậm chí có thể làm dấy lên cảm giác sợ hãi, nó không còn bình thường như trước nữa. Nhưng đừng sợ, nó dễ hơn nhiều so với bạn nghĩ và sẽ mất khoảng 15 phút từ đầu đến cuối.

Một lý do tốt để tự biên dịch nó là bạn có thể nhận được version phát hành mới nhất hoặc thậm chí là version beta. CentOS không được biết đến là nơi có version phát hành mới nhất của các gói, vì vậy đây có thể phải là điều bạn biết cách làm. Tuy nhiên, có một cạm bẫy lớn đối với cách tiếp cận này; không có trình quản lý gói để thông báo cho bạn khi có bản cập nhật. Cạm bẫy thứ hai, nhưng nhỏ, là khi có bản cập nhật, bạn gỡ cài đặt version cũ rồi biên dịch mã nguồn mới giống như cách bạn làm trong hướng dẫn này. Hãy ghi nhớ điều đó và có thể thận trọng khi đăng ký bản tin email của họ để nhận thông báo về thời điểm phát hành version mới.

Đây là hướng dẫn dành cho người mới bắt đầu, nó giả định như sau:

  • Bạn có một VPS CentOS 6 (x64) mới (từ DigitalOcean)
  • Bạn có quyền cấp cơ sở

Nếu bạn sử dụng 'sudo', bạn nên biết thêm nó vào bất kỳ lệnh nào được chỉ định.

Yêu cầu

Ta cần một số thứ được cài đặt không đi kèm với bản cài đặt trần mà DigitalOcean cung cấp. Vì vậy, hãy cài đặt chúng đảm bảo rằng ta có thể biên dịch mã nguồn. Nó cũng sẽ liệt kê khoảng hai chục gói phụ thuộc, chỉ cần chấp nhận chúng và để hệ thống cài đặt tất cả.

yum install gcc gcc-c++ automake autoconf libtoolize make

Lấy mã nguồn

Ta cần download mã nguồn từ trang web của Node và họ làm cho nó trở nên cực kỳ đơn giản. Có một nút lớn màu xanh lá cây trên trang chủ sẽ buộc download . Bây giờ, ta không cần tải nó xuống máy tính local của bạn , ta cần nó trên VPS. Trên VPS của bạn, hãy chuyển sang folder "opt". Tại sao lại thay đổi folder cụ thể đó? Ngày xưa, "/ opt" được sử dụng bởi các nhà cung cấp UNIX như AT&T, Sun, DEC và các nhà cung cấp bên thứ 3 để giữ các gói "Option"; tức là các gói mà bạn có thể đã trả thêm tiền cho. Tôi tìm thấy câu trả lời đó được giải thích một cách hùng hồn ở đây .

cd /opt

Thư mục này trống, vì vậy đó là một nơi tốt để giữ mã nguồn của bạn mà bạn muốn biên dịch. Nhưng bây giờ ta cần lấy gói trên VPS. Ta sử dụng công cụ 'wget' để download :

wget http://nodejs.org/dist/v0.10.15/node-v0.10.15.tar.gz

Bây giờ gói đã có trên VPS của bạn, hãy extract nó từ file tar.

tar zxvf node-v0.10.15.tar.gz

Tùy chọn được sử dụng như sau: 'z' là chỉ định rằng tar đã được extract , 'x' để extract , 'v' là versbose, 'f' là chỉ định file lưu trữ. Các tùy chọn này kết hợp với nhau sẽ cho tar biết rằng file tarball đã được extract và cần được extract .

Vì bây giờ ta đã có mã nguồn được extract , ta cần truy cập vào folder và cài đặt mọi thứ. Vì vậy, hãy chuyển vào folder đó:

cd node-v0.10.15

Thư mục này chứa các file thô cần được biên dịch riêng cho kiến trúc và kernel cụ thể của bạn. Ta phải tạo một số file để cung cấp hướng dẫn trong quá trình biên dịch. Đừng lo lắng, điều này được thực hiện rất dễ dàng. Hầu hết các gói mã nguồn như thế này đi kèm với một tập lệnh bash được gọi là "config" sẽ tạo tất cả các file này và đặt các tùy chọn cho bạn. Vì vậy, hãy chạy tập lệnh cấu hình:

./configure

Sẽ chỉ mất vài giây để hoàn thành và nó sẽ xuất ra rất nhiều thứ. Trừ khi bạn thấy bất cứ điều gì có nội dung "không thành công" hoặc "mã thoát" kèm theo một loạt lỗi, khi đó nó hoàn tất thành công. Tôi sẽ cho rằng nó thành công, vì vậy ta sẽ chuyển sang bước tiếp theo.

Ta cần có tất cả mã được biên dịch từ định dạng thô của chúng, đó là một lệnh thực sự đơn giản để chạy.

make

Bây giờ hãy đi uống nước, pha một chiếc bánh cát, hoặc có thể chợp mắt một chút. Quá trình này có thể mất khoảng năm phút. Hãy nghĩ về điều đó, bạn có thể tạo ra một vài VPS trong thời gian cần thiết để kết hợp này. Nó đi qua tất cả các file phụ thuộc và biên dịch chúng, liên kết chúng lại với nhau và cài đặt để hệ thống sử dụng. Nó sẽ nhấp nháy một loạt các lệnh dài trên màn hình của bạn. Bạn không cần phải làm gì cả, nó tự chạy. Bạn có thể ngồi và xem nó, nhưng cá nhân tôi khuyên bạn nên đứng dậy và rời khỏi máy tính trong vài phút khi nó chạy, thời gian của bạn sẽ tốt hơn.

Sau khi hoàn tất, chỉ còn một bước nữa. Bạn sắp hoàn thành nên đừng bỏ cuộc ngay bây giờ. Bước cuối cùng là thực sự cài đặt nó trên hệ thống của bạn bằng cách chuyển tất cả các file đã biên dịch vào nhiều folder khác trên VPS của bạn để hệ thống có thể sử dụng chúng. Đây là một quá trình nhanh chóng và quá trình được thực hiện bởi một lệnh duy nhất.

make install

Việc đó sẽ chỉ mất một vài phút để hoàn thành và sau khi hoàn tất, bạn có thể xác minh nó đã cài đặt cả Node.js và NPM:

node --version
v0.10.15

npm --version
1.3.5

Nếu bạn thấy các version như được chỉ định ở trên, thì đó là nó. Bạn đã hoàn tất và đã biên dịch thành công Node.js từ đầu! Bạn có thể bắt đầu cài đặt các module nút thông qua NPM hoặc nếu bạn đã có một ứng dụng trên VPS của bạn , bạn có thể khởi động nút để phục vụ nó.


Tags:

Các tin liên quan

Cài đặt và cấu hình Zenoss trên server riêng ảo CentOS
2013-07-17
Cách cài đặt Laravel 4 trên VPS CentOS 6
2013-07-15
Cách chuyển đổi video bằng FFMpeg trên CentOS 6
2013-05-31
Cách tạo plugin Nagios với Bash trên CentOS 6
2013-04-29
Cách tạo plugin Nagios với Perl trên CentOS 6
2013-04-29
Cách tạo plugin Nagios với Ruby On CentOS 6
2013-04-29
Cách tạo bản backup Off-Site cho trang web của bạn với Rsync trên Centos 6
2013-04-18
Cách cài đặt và chạy ứng dụng Node.js trên Centos 6.4 64bit
2013-04-15
Cách cài đặt Squid Proxy trên CentOS 6
2013-04-04
Cách cài đặt Nagios trên CentOS 6
2013-03-29