Lompat ke konten Lompat ke sidebar Lompat ke footer

Install Neo Feeder on Docker

Install Neo Feeder on Docker
Per tanggal 25 februari 2022 kemarin DIKTI resmi merilis PDDIKTI Feeder terbaru yang dinamakan Neo Feeder. Neo Feeder ini memiliki beberapa fitur terkini seperti UI yang lebih fresh, upgrade dari teknologi monolithic ke microservices, mendukung multiplatform dan sudah terintegrasi dengan Kampus Merdeka

Untuk menginstall neofeeder, DIKTI telah membekali installer untuk versi Windows dan Multiplatform. Untuk versi multiplatform, teknologi yang digunakan adalah Docker yang bisa diinstall di Linux, MacOS, bahkwan windows. Adapun yang akan dibahas diartikel ini adalah installasi Neo Feeder Multiplatform di Linux. Untuk itu ikuti langkah-langkah berikut:

Yang pertama tentunya adalah menginstall Linux (diartikel ini digunakan Ubuntu versi 21.04). Setelah linux terinstall, langkah selanjutnya adalah install Docker dan Docker Compose.

Selanjutnya download aplikasi Neo Feeder dari halaman pddikti-admin, lalu upload dan extract file tersebut.

Pada saat artikel ini ditulis, installer neofeeder multiplatform ada sedikit bug yang menyebabkan service yang jalan di port 3003 tidak bisa aktif. Hal ini dikarenakan file yang menjalankan service tersebut tidak bisa dijalankan. Karena itu, dilangkah berikutnya adalah kita melakukan modifikasi sedikit dibeberapa file installer-nya.
Yang pertama dimodifikasi adalah file Dockerfile. Edit file tersebut lalu rubah menjadi seperti berikut
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
FROM ubuntu:latest
 
RUN apt-get update -y \
    && apt-get upgrade -y \
    && apt-get install -y --allow-unauthenticated \
        curl \
        p7zip-full \
        nginx \
        supervisor
 
RUN curl -sL https://deb.nodesource.com/setup_current.x | bash - && apt-get install -yq nodejs
 
# Clear cache
RUN apt-get clean && rm -rf /var/lib/apt/lists/*
 
RUN groupadd -g 1000 www
RUN useradd -u 1000 -ms /bin/bash -g www www
 
COPY --chown=www:www . .
 
RUN mkdir -p /var/log/supervisor
RUN chown www:www /var/log/supervisor
 
# USER www
 
CMD ["/usr/bin/supervisord"]

Adapun perubahan yang dilakukan di file tersebut adalah menambahkan option -y dibelakang perintah apt-get update dan menambahkan perintah && apt-get upgrade -y \ setelah perintah apt-get update -y \Selain itu, versi nodejs diupgrade dari yang sebelumnya menggunakan versi 10, menjadi versi terakhir https://deb.nodesource.com/setup_current.x

Selanjutnya adalah merubah file server-linux yang ada di folder app menjadi executeble dengan perintah chmod +x app/server-linux

Langkah berikutnya adalah merubah sedikit file docker-compose.yml. Perubahan yang dilakukan adalah merubah port 8100 menjadi port 80. Adapun perubahan filenya menjadi sebagai berikut

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
version: '3'
services:
 
  #PHP Service
  app-pddikti:
    build:
      context: .
      dockerfile: Dockerfile
    image: pddikti/new_feeder
    container_name: app-pddikti
    restart: unless-stopped
    tty: true
    environment:
      SERVICE_NAME: app
      SERVICE_TAGS: prod
    volumes:
      - ./nginx/nginx.conf:/etc/nginx/nginx.conf
    networks:
      - app-network
    ports:
      - "80:8100"
      - "3003:3003"
 
  #PgSQL Service
  db-pddikti:
    image: postgres:12
    container_name: db-pddikti
    restart: unless-stopped
    tty: true
    ports:
      - "54333:54333"
    volumes:
      - ./pgsql/data:/var/lib/postgresql/data
    networks:
      - app-network
 
#Docker Networks
networks:
  app-network:
    driver: bridge
    ipam:
      driver: default
      config:
      - subnet: 192.167.150.1/24

Jika perubahan-perubahan sudah dilakukan, langkah selanjutnya adalah build image neofeeder lalu mengaktifkannya. Untuk build image neofeeder ketikkan perintah
1
docker-compose build
Proses ini membutuhkan beberapa menit tergantung kecepatan dari koneksi internet yang dimiliki. Tunggulah sampai proses build selesai


Setelah proses build selesai, langkah selanjutnya adalah mengaktifkan container neofeeder dengan menjalan perintah
1
docker-compose up -d
Proses ini juga membutuhkan beberapa menit untuk selesai dan tergantung dari kecepatan internet yang dimiliki. Tunggulah sampai proses selesai


Jika proses diatas sudah selesai, maka seharusnya neofeeder sudah berhasil diinstall. Untuk mengetest-nya bisa langsung mengakses alamat IP dari server neofeeder terinstall atau bisa juga dicek melalu CLI dengan menjalankan perintah curl localhost atau curl localhost:3003 untuk cek webservice-nya yang masing-masing ditunjukkan dalam gambar dibawah ini


Update: Agar bisa melakukan inisialisasi data melalui push prefill, maka sebelum container di build, copy-kan file prefill ke folder prefill_pddikti setelah itu lakukan build container

Bagaimana, mudahkan install Neo feeder multiplatform? Demikian artikel singkat ini, semoga bermanfaat (*)

1 komentar untuk "Install Neo Feeder on Docker"

  1. wkwkwkwk sue masalah permission doang back end gak mau running.

    BalasHapus