INSTALL PDF TOOLKIT DI SERVER UBUNTU 22.04: Difference between revisions

From Dboswiki
Jump to navigation Jump to search
Line 105: Line 105:
  Description=PDF Toolkit Web Application
  Description=PDF Toolkit Web Application
  After=network.target
  After=network.target
  [Service]
  [Service]
  Type=simple
  Type=simple
  User=www-data
  User=www-data
  Group=www-data
  Group=www-data
  WorkingDirectory=/var/www/pdf-toolkit
  WorkingDirectory=/var/www/pdf-toolkit
  ExecStart=/usr/bin/serve -s dist -l 8080
  ExecStart=/usr/bin/serve -s dist -l 8080
  Restart=always
  Restart=always
  RestartSec=5
  RestartSec=5
  Environment=NODE_ENV=production
  Environment=NODE_ENV=production
  [Install]
  [Install]
  WantedBy=multi-user.target
  WantedBy=multi-user.target
Line 125: Line 119:
Jika which serve menghasilkan path berbeda, ubah bagian:
Jika which serve menghasilkan path berbeda, ubah bagian:


ExecStart=/usr/bin/serve -s dist -l 8080
ExecStart=/usr/bin/serve -s dist -l 8080


sesuai path tersebut.
sesuai path tersebut.


4. Pastikan permission
4. Pastikan permission
sudo chown -R root:root /var/www/pdf-toolkit
sudo chown -R root:root /var/www/pdf-toolkit
sudo chmod -R 755 /var/www/pdf-toolkit
sudo chmod -R 755 /var/www/pdf-toolkit


Karena service hanya membaca file dist, www-data tetap dapat membacanya.
Karena service hanya membaca file dist, www-data tetap dapat membacanya.


5. Reload systemd
5. Reload systemd
sudo systemctl daemon-reload
sudo systemctl daemon-reload


Aktifkan agar otomatis saat boot:
Aktifkan agar otomatis saat boot:


sudo systemctl enable pdf-toolkit
sudo systemctl enable pdf-toolkit


Jalankan:
Jalankan:


sudo systemctl start pdf-toolkit
sudo systemctl start pdf-toolkit
 
6. Periksa status
6. Periksa status
sudo systemctl status pdf-toolkit --no-pager -l
sudo systemctl status pdf-toolkit --no-pager -l


Targetnya:
Targetnya:
Line 153: Line 148:
   Loaded: loaded
   Loaded: loaded
   Active: active (running)
   Active: active (running)
7. Tes port 8080
7. Tes port 8080
sudo ss -lntp | grep 8080
sudo ss -lntp | grep 8080
Line 158: Line 154:
Kemudian:
Kemudian:


curl http://127.0.0.1:8080
curl http://127.0.0.1:8080


Kalau berhasil, akan mendapatkan HTML aplikasi.
Kalau berhasil, akan mendapatkan HTML aplikasi.
Line 166: Line 162:
Ini yang memastikan systemd benar-benar bekerja:
Ini yang memastikan systemd benar-benar bekerja:


sudo reboot
sudo reboot


Setelah server hidup kembali:
Setelah server hidup kembali:


sudo systemctl status pdf-toolkit --no-pager
sudo systemctl status pdf-toolkit --no-pager


Harus kembali:
Harus kembali:


Active: active (running)
Active: active (running)
9. Hubungkan ke Cloudflare Tunnel
 
Karena Apache tetap menggunakan:
 
:80
 
PD

Revision as of 14:18, 2 September 2026

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
sudo chmod -R 755 /var/www/pdf-toolkit

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)