Instal Redmine dengan Apache dan MySQL 8 di Fedora 30/29/31

Ikuti panduan ini untuk mempelajari cara menginstal Redmine dengan Apache dan MySQL 8 di Fedora 30/29/31.

Ingin menggunakan CentOS 8 sebagai gantinya? Ikuti tautan di bawah ini untuk mempelajari cara menginstal Redmine di CentOS 8.

Instal Redmine dengan Apache dan MariaDB di CentOS 8

Instal Redmine dengan Apache dan MySQL 8 di Fedora 30/29/31

Jalankan Pembaruan Sistem

Anda dapat memperbarui paket sistem Anda dengan menjalankan;

dnf update

Instal Ketergantungan Redmine yang Diperlukan

Jalankan perintah di bawah ini untuk menginstal dependensi Redmine yang diperlukan dan paket lainnya.

dnf install ruby-devel rpm-build libxml2-devel make automake libtool ImageMagick ImageMagick-devel mariadb-devel gcc httpd-devel libcurl-devel gcc-c++ vim

Selama instalasi, Ruby juga diinstal. Verifikasi versi yang diinstal.

ruby -v
ruby 2.5.5p157 (2019-03-15 revision 67260) [x86_64-linux]

Versi yang ditampilkan di sini mungkin berbeda dengan versi Ruby yang Anda instal.

Buat Pengguna Sistem Redmine

Dalam panduan ini, kami akan menginstal Redmine pada  /opt/redmine direktori dan menjalankannya sebagai user sistem redmine yang tidak memiliki hak istimewa.

Oleh karena itu, buat user redmine (or any other non-privileged user that Redmine will run as for that case) dan tetapkan  /opt/redmine sebagai direktori home-nya.

useradd -r -m -d /opt/redmine redmine

Konsultasikan  man useradd untuk mempelajari apa arti opsi yang digunakan di atas.

Instal Apache HTTP Server

Untuk menginstal server HTTP Apache di Fedora 30/29/31, cukup jalankan;

dnf install httpd

Mulai dan aktifkan Apache untuk berjalan pada boot sistem.

systemctl enable httpd --now

Selanjutnya, tambahkan Apache ke grup Redmine.

usermod -aG redmine apache

Instal Backend Database MySQL 8 Redmine

Kami telah membahas instalasi MySQL 8 di Fedora dalam panduan kami sebelumnya. Ikuti tautan di bawah ini untuk menginstalnya.

Instal MySQL 8 di Fedora 30/Fedora 29/31

Setelah terinstal, login ke MySQL dan buat database Redmine dan user database Redmine. Replace the database, database user and password accordingly.

mysql -u root -p

Selanjutnya buat databasenya.

create database redminedb;

Buat user basis data Redmine.

create user [email protected] identified by '[email protected]#8';

Berikan user semua hak istimewa pada database Redmine yang dibuat.

grant all on redminedb.* to [email protected];

Reload tabel hak istimewa dan keluar.

flush privileges; quit

Download Redmine Tarball

Untuk menginstal Redmine versi terbaru, navigasikan ke halaman  Download  dan ambil versi rilis stabil terbaru.

Anda cukup menggunakan perintah wget untuk menarik tarball Redmine terbaru, versi 4.0.5 pada tulisan ini.

wget http://www.redmine.org/releases/redmine-4.0.5.tar.gz -P /tmp

Instal Redmine di Fedora 30/29/31

Ekstrak tarball Redemine ke direktori home user Redmine setelah downloadan selesai.

sudo -u redmine tar xzf /tmp/redmine-4.0.5.tar.gz -C /opt/redmine/ --strip-components=1

Anda sekarang harus memiliki file redmine di bawah /opt/redmine.

ls /opt/redmine
app bin config.ru db extra Gemfile log public README.rdoc tmp appveyor.yml config CONTRIBUTING.md doc files lib plugins Rakefile test vendor

Konfigurasikan Redmine

Beralih ke user Redmine dan ganti nama contoh konfigurasi Redmine berikut.

su - redmine
cp config/configuration.yml{.example,}
cp public/dispatch.fcgi{.example,}
cp config/database.yml{.example,}

Atur detail koneksi database Redmine.

vim config/database.yml
... production: adapter: mysql2 database: redminedb host: localhost username: redmineuser password: "[email protected]#8" encoding: utf8...

Instal Ketergantungan Ruby GEM

Saat masih masuk sebagai user Redmine dan dari direktori home-nya, jalankan perintah di bawah ini;

gem install bundler
bundle install --without development test --path vendor/bundle

Hasilkan Token Sesi Rahasia

Untuk mencegah tempering cookie yang menyimpan data sesi, Anda perlu membuat kunci rahasia acak yang digunakan Rails untuk menyandikannya.

bundle exec rake generate_secret_token

Buat Objek Skema Basis Data

Buat struktur database Rails dengan menjalankan perintah di bawah ini;

RAILS_ENV=production bundle exec rake db:migrate

Setelah migrasi database selesai, masukkan data konfigurasi default ke dalam database dengan mengeksekusi;

RAILS_ENV=production REDMINE_LANG=en bundle exec rake redmine:load_default_data

Konfigurasi Izin Sistem File

Pastikan direktori berikut tersedia di direktori Redmine, /opt/redmine.

  • tmp dan tmp/pdf
  • publik dan publik/plugin_assets
  • catatan
  • file

Jika tidak ada, buat saja dan pastikan milik user yang biasa menjalankan Redmine.

for i in tmp tmp/pdf public/plugin_assets; do [ -d $i ] || mkdir -p $i; done
chown -R redmine:redmine files log tmp public/plugin_assets
chmod -R 755 /opt/redmine/

Menguji Instalasi Redmine

Pengaturan Redmine di CentOS 8 sekarang selesai. Anda dapat menguji Redmine menggunakan WEBrick dengan menjalankan perintah di bawah ini;

bundle exec rails server webrick -e production
=> Booting WEBrick => Rails 5.2.3 application starting in production on http://0.0.0.0:3000 => Run `rails server -h` for more startup options [2019-10-31 21:37:32] INFO WEBrick 1.4.2 [2019-10-31 21:37:32] INFO ruby 2.5.5 (2019-03-15) [x86_64-linux] [2019-10-31 21:37:32] INFO WEBrick::HTTPServer#start: pid=11811 port=3000

Anda sekarang dapat mengakses Redmine melalui browser menggunakan alamat,  http://Server-IP:3000/.

Jika firewallD sedang berjalan, buka port 3000/tcp pada firewalld. Jalankan perintah di bawah ini sebagai user istimewa. (If you are logged in as Redmine user, simply press Ctrl+d to log out).

firewall-cmd --add-port=3000/tcp --permanent firewall-cmd --reload

Setelah port dibuka, navigasikan ke browser dan akses Redmine. Anda akan melihat halaman selamat datang.

Klik sign in dan menggunakan kredensial, User:  admin dan Password: admin untuk masuk.

Konfigurasi Apache untuk Redmine

WEBrick tidak cocok untuk melayani Redmine di lingkungan produksi. Karena itu, kami menggunakan Apache dengan Phusion Passenger dalam panduan ini ke server Redmine.

Instal modul Apache Phusion Passenger.

dnf install passenger mod_passenger

Setelah instalasi selesai, edit file k
onfigurasi penumpang Apache sehingga terlihat seperti gambar di bawah ini;

vim /etc/httpd/conf.d/passenger.conf
<IfModule mod_passenger.c> PassengerRoot /usr/share/passenger//phusion_passenger/locations.ini PassengerRuby /usr/bin/ruby </IfModule> # Deploying a Ruby on Rails application: an example Listen 3000 <VirtualHost *:3000> ServerName redmine.kifaruni-demo.com DocumentRoot /opt/redmine/public CustomLog "logs/redmine_access.log" combined ErrorLog "logs/redmine_error.log" <Directory /opt/redmine/public> Options -MultiViews AllowOverride all Require all granted </Directory> </VirtualHost>

Simpan dan keluar dari file konfigurasi.

Periksa sintaks server HTTP.

httpd -t

Jika sintaksnya Oke, Syntax OK, mulai ulang Apache.

systemctl restart httpd

Periksa apakah ada yang mendengarkan di Port 3000.

lsof -i :3000
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME httpd 2614 root 6u IPv4 148831 0t0 TCP *:hbci (LISTEN) httpd 2663 apache 6u IPv4 148831 0t0 TCP *:hbci (LISTEN) httpd 2664 apache 6u IPv4 148831 0t0 TCP *:hbci (LISTEN) httpd 2665 apache 6u IPv4 148831 0t0 TCP *:hbci (LISTEN)

Itu hebat.

Akses Redmine dari Browser

Jika SELinux berjalan, saya sarankan Anda mengaturnya dalam mode permisif karena dapat menyebabkan masalah dengan mengakses beberapa halaman di Redmine. Namun jika Anda fasih dengan cara kerja SELinux, Anda dapat mengatasinya.

sed -i 's/=enforcing/=permissive/' /etc/selinux/config

Reboot sistem untuk mempengaruhi perubahan SELinux.

Untuk menonaktifkan SELinux sementara, jalankan;

setenforce 0

Karena kami telah membuka port 3000/tcp di firewallD, Anda sekarang seharusnya dapat mengakses interface web Redmine sekarang. Ganti server-IP-or-Hostname demikian.

http://server-IP-or-Hostname:3000

Masuk dengan kredensial default dan setel ulang password admin.

Siapkan profil admin Redmine Anda.

Anda sekarang dapat Menavigasi melalui tab Redmine untuk mempelajari lebih lanjut tentangnya.

Tab Administrasi Redmine.

Proyek Redmine tab

Anda telah berhasil menginstal Redmine dengan Apache dan MySQL 8 di Fedora 30/29/31.

Referensi:

Redmine Wiki

Tutorial Terkait Lainnya

Instal GoAccess Di Fedora 30/Fedora 29

Setup HAProxy Load Balancer di Fedora 30/Fedora 29

Instal ManageEngine AssetExplorer di CentOS 7/Fedora 30/29