INSTALL PDF TOOLKIT DI SERVER UBUNTU 22.04: Difference between revisions

From Dboswiki
Jump to navigation Jump to search
No edit summary
 
(11 intermediate revisions by the same user not shown)
Line 5: Line 5:
Installation & Setup
Installation & Setup


1. Clone the repository:
==1. Clone the repository: ==


- git clone <nowiki>https://github.com/yashdhanani/pdf-toolkit-app.git</nowiki>
- sudo git clone <nowiki>https://github.com/yashdhanani/pdf-toolkit-app.git</nowiki>


- cd pdf-toolkit-app
- cd pdf-toolkit-app


2. Install dependencies:
==2. Install dependencies:==


- npm install
- npm install


3. Start the development server:
==3. Start the development server:==


- npm run dev
- sudo npm run dev


- Open <nowiki>http://localhost:5173/pdf-toolkit-app/</nowiki> in your browser.
- Open <nowiki>http://localhost:5173/pdf-toolkit-app/</nowiki> in your browser.


4. Build for production:
==4. Build for production:==


- npm run build
- sudo npm run build


5. Preview the production build:
==5. Preview the production build:==


- npm run preview
- sudo npm run preview




Line 34: Line 34:
Cara  merubahnya
Cara  merubahnya


nano vite.config.js
''sudo nano vite.config.js''




Tampilan bagian atas sebelum di rubah :
Tampilan bagian atas sebelum di rubah :


export default defineConfig({
'''export default defineConfig({


  base: '/pdf-toolkit-app/',
  ''''base: '/pdf-toolkit-app/',


  plugins: [
  ''''plugins: ['''




Tampilan sesudah di rubah :
Tampilan sesudah di rubah :


export default defineConfig({
'''export default defineConfig({


  base: '/pdf-toolkit-app/',
  '''base: '/pdf-toolkit-app/',


  server: {
  '''server: {


    allowedHosts: ['pdf.smpyppksantodonboscofakfak.sch.id'],
    '''allowedHosts: ['pdf.smpyppksantodonboscofakfak.sch.id'],


  },
  '''},


  plugins: [
  '''plugins: ['''




setelah itu simpan file vite.config.js dengan tekan Control X, kemudian tekan Y, lalu coba akses menggunakan domain
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)

Latest revision as of 06:23, 5 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-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)