↓ Skip to main content

Install Node.js 18+ di CentOS 7

·2 mins

CentOS 7 sering mengalami kendala saat menginstal Node.js versi terbaru, terutama Node.js 18 ke atas. Hal ini disebabkan oleh versi glibc bawaan CentOS 7 yang relatif lama dan tidak memenuhi kebutuhan beberapa build resmi Node.js.

Saat mencoba menjalankan Node.js, biasanya akan muncul error seperti:

/lib64/libc.so.6: version 'GLIBC_2.27' not found

Selain itu, dapat muncul error terkait versi library lainnya, misalnya:

GLIBC_2.25
GLIBC_2.27
GLIBC_2.28
CXXABI_1.3.9
GLIBCXX_3.4.20
GLIBCXX_3.4.21

Solusi
#

Salah satu solusinya adalah menggunakan unofficial Node.js builds yang dikompilasi secara khusus agar kompatibel dengan versi glibc yang lebih lama.

Build tersebut tersedia di:

https://unofficial-builds.nodejs.org/download/release/

Pada CentOS 7, salah satu build yang dapat digunakan adalah:

x64-glibc-217

Build ini ditujukan untuk sistem dengan glibc 2.17, yang merupakan versi glibc yang digunakan oleh CentOS 7.

Instalasi Menggunakan NVM
#

Agar lebih mudah mengelola versi Node.js, instalasi dapat dilakukan menggunakan NVM (Node Version Manager).

1. Buka konfigurasi shell
#

Edit file ~/.bashrc:

nano ~/.bashrc

Cari konfigurasi NVM_DIR, kemudian tambahkan konfigurasi berikut setelah baris NVM_DIR dan konfigurasi NVM lainnya:

# Gunakan unofficial Node.js build yang kompatibel dengan CentOS 7
export NVM_NODEJS_ORG_MIRROR=https://unofficial-builds.nodejs.org/download/release

nvm_get_arch() {
  nvm_echo x64-glibc-217
}

2. Terapkan perubahan konfigurasi
#

Setelah menyimpan file, jalankan:

source ~/.bashrc

3. Instal Node.js 18.19.1
#

Jalankan:

nvm install 18.19.1

Kemudian gunakan Node.js versi 18:

nvm use 18

Agar Node.js 18 otomatis digunakan sebagai versi default:

nvm alias default 18

4. Verifikasi instalasi
#

Pastikan Node.js dan npm sudah dapat dijalankan:

node -v
npm -v

Output node -v seharusnya menunjukkan:

v18.19.1

Metode ini menggunakan unofficial build, bukan binary Node.js resmi yang ditujukan untuk semua platform. Oleh karena itu, pastikan build yang digunakan memang sesuai dengan kebutuhan dan lingkungan server.

Untuk CentOS 7, penggunaan build x64-glibc-217 dapat menjadi alternatif ketika binary Node.js standar tidak dapat dijalankan karena keterbatasan versi glibc.

Jika memungkinkan, upgrade sistem operasi ke versi CentOS/RHEL-compatible yang lebih baru tetap lebih disarankan untuk penggunaan jangka panjang, karena CentOS 7 sudah mencapai akhir masa dukungannya.

Related