INSTALL PDF TOOLKIT DI SERVER UBUNTU 22.04
PDF Toolkit: Utilitas PDF Berbasis Browser yang Serbaguna. Aplikasi web modern dan responsif yang dibangun menggunakan React dan Vite, serta didukung oleh UnoCSS untuk penataan gaya yang sangat cepat. Alat ini memungkinkan pengguna melakukan berbagai manipulasi PDF umum langsung di dalam browser, sehingga menjamin privasi dan efisiensi.
Sumber : https://github.com/yashdhanani/pdf-toolkit-a
Installation & Setup
1. Clone the repository:
- sudo git clone https://github.com/yashdhanani/pdf-toolkit-app.git
- cd pdf-toolkit-app
2. Install dependencies:
- npm install
3. Start the development server:
- sudo npm run dev
- Open http://localhost:5173/pdf-toolkit-app/ in your browser.
4. Build for production:
- sudo npm run build
5. Preview the production build:
- sudo npm run preview
Untuk akses menggunakan domain misalnya domain : pdf.smpyppksantodonboscofakfak.sch.id, yang harus di rubah adalah file vite.config.js
Cara merubahnya
sudo nano vite.config.js
Tampilan bagian atas sebelum di rubah :
export default defineConfig({
'base: '/pdf-toolkit-app/',
'plugins: [
Tampilan sesudah di rubah :
export default defineConfig({
base: '/pdf-toolkit-app/',
server: {
allowedHosts: ['pdf.smpyppksantodonboscofakfak.sch.id'],
},
plugins: [
setelah itu simpan file vite.config.js dengan tekan Control X, kemudian tekan Y, lalu coba akses menggunakan domain
Untuk Menjalankan sebagai server production
Setelah npm run build, jalankan :
sudo npm install -g serve sudo serve -s dist -l 4071
menggunakan serve untuk melayani folder dist.
1. Pastikan aplikasi sudah di-build
cd /var/www/pdf-toolkit npm install npm run build
Pastikan:
ls -lah /var/www/pdf-toolkit/dist
ada index.html.
2. Cari lokasi serve
Jalankan:
which serve
Biasanya hasilnya:
/usr/bin/serve
atau jika Node.js dipasang dari NodeSource, bisa saja:
/usr/lib/node_modules/serve/build/main.js
Jangan menebak path-nya. Gunakan hasil which serve untuk konfigurasi service.
3. Buat systemd service
sudo nano /etc/systemd/system/pdf-toolkit.service
Isi:
[Unit] Description=PDF Toolkit Web Application After=network.target [Service] Type=simple User=www-data Group=www-data WorkingDirectory=/var/www/pdf-toolkit ExecStart=/usr/bin/serve -s dist -l 8080 Restart=always RestartSec=5 Environment=NODE_ENV=production [Install] WantedBy=multi-user.target
Jika which serve menghasilkan path berbeda, ubah bagian:
ExecStart=/usr/bin/serve -s dist -l 8080
sesuai path tersebut.
4. Pastikan permission
sudo chown -R root:root /var/www/pdf-toolkit-app sudo chmod -R 755 /var/www/pdf-toolkit-app
Karena service hanya membaca file dist, www-data tetap dapat membacanya.
5. Reload systemd
sudo systemctl daemon-reload
Aktifkan agar otomatis saat boot:
sudo systemctl enable pdf-toolkit
Jalankan:
sudo systemctl start pdf-toolkit
6. Periksa status
sudo systemctl status pdf-toolkit --no-pager -l
Targetnya:
● pdf-toolkit.service
Loaded: loaded Active: active (running)
7. Tes port 8080
sudo ss -lntp | grep 8080
Kemudian:
curl http://127.0.0.1:8080
Kalau berhasil, akan mendapatkan HTML aplikasi.
8. Tes restart server
Ini yang memastikan systemd benar-benar bekerja:
sudo reboot
Setelah server hidup kembali:
sudo systemctl status pdf-toolkit --no-pager
Harus kembali:
Active: active (running)