Redmine adalah aplikasi manajemen proyek dan pelacakan masalah sumber terbuka dan gratis. Ini adalah lintas platform dan lintas basis data dan dibangun di atas kerangka kerja Ruby on Rails.
Redmine menyertakan dukungan untuk beberapa proyek, wiki, sistem pelacakan masalah, forum, kalender, pemberitahuan email, dan banyak lagi.
Tutorial ini menjelaskan cara menginstal dan mengkonfigurasi Redmine versi terbaru di CentOS 8. Kami akan menggunakan MariaDB sebagai back-end database dan Passenger + Apache sebagai server aplikasi Ruby.
Prasyarat #
Pastikan Anda telah memenuhi prasyarat berikut:
- Nama domain menunjuk ke IP publik server Anda.
- Anda masuk sebagai root atau pengguna dengan hak istimewa sudo.
Membuat database MySQL #
Redmine mendukung MySQL/MariaDB, Microsoft SQL Server, SQLite 3, dan PostgreSQL. Kami akan menggunakan MariaDB sebagai back-end database.
Jika Anda belum menginstal MariaDB atau MySQL di server CentOS, Anda dapat menginstalnya dengan mengikuti petunjuk berikut.
Login ke shell MySQL menggunakan perintah berikut:
sudo mysql
Dari dalam shell MySQL, jalankan pernyataan SQL berikut untuk membuat database baru, pengguna baru, dan memberikan akses pengguna ke database:
Pastikan Anda mengubahCREATE DATABASE redmine CHARACTER SET utf8;
GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password';
change-with-strong-password
dengan kata sandi yang kuat. Setelah selesai, keluar dari shell MySQL:
EXIT;
Menginstal Penumpang, Apache, dan Ruby #
Penumpang adalah server aplikasi web yang cepat dan ringan untuk Ruby, Node.js, dan Python yang dapat diintegrasikan dengan Apache dan Nginx. Kami akan menginstal Passenger sebagai modul Apache.
Aktifkan repositori EPEL:
sudo dnf install epel-release
sudo dnf config-manager --enable epel
Setelah repositori diaktifkan, perbarui daftar paket dan instal Ruby, Apache, dan Passenger:
sudo dnf install httpd mod_passenger passenger passenger-devel ruby
Mulai layanan Apache dan aktifkan untuk memulai saat boot:
sudo systemctl enable httpd --now
Membuat Pengguna Sistem Baru #
Buat pengguna dan grup baru, dengan direktori home /opt/redmine
yang akan menjalankan instance Redmine:
sudo useradd -m -U -r -d /opt/redmine redmine
Tambahkan apache
pengguna ke redmine
grup dan ubah /opt/redmine
izin direktorisehingga Apache dapat mengaksesnya:
sudo usermod -a -G redmine apache
sudo chmod 750 /opt/redmine
Menginstal Redmine #
Pada saat penulisan, versi stabil terbaru dari Redmine adalah versi 4.1.0.
Sebelum melanjutkan ke langkah berikutnya, kunjungi halaman unduh Redmine untuk melihat apakah versi yang lebih baru tersedia.
Instal compiler GCC dan library yang diperlukan untuk membangun Redmine:
sudo dnf group install "Development Tools"
sudo dnf install zlib-devel curl-devel openssl-devel mariadb-devel ruby-devel
Pastikan Anda menjalankan langkah-langkah berikut sebagai redmine
pengguna:
sudo su - redmine
1. Mengunduh Redmine #
Unduh arsip Redmine dengan curl
:
curl -L http://www.redmine.org/releases/redmine-4.1.0.tar.gz -o redmine.tar.gz
Setelah unduhan selesai, ekstrak arsip:
tar -xvf redmine.tar.gz
2. Konfigurasi Database Redmine #
Salin file konfigurasi database contoh Redmine:
cp /opt/redmine/redmine-4.1.0/config/database.yml.example /opt/redmine/redmine-4.1.0/config/database.yml
Buka file dengan editor teks Anda:
nano /opt/redmine/redmine-4.1.0/config/database.yml
Telusuri production
bagian dan masukkan database MySQL dan informasi pengguna yang kami buat sebelumnya:
production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
password: "change-with-strong-password"
encoding: utf8mb4
Setelah selesai, simpan file dan keluar dari editor.
3. Menginstal dependensi Ruby #
Beralih ke redmine-4.1.0
direktori dan instal dependensi Ruby:
cd ~/redmine-4.1.0
gem install bundler --no-rdoc --no-ri
bundle install --without development test postgresql sqlite --path vendor/bundle
4. Buat Kunci dan Migrasikan Basis Data #
Jalankan perintah berikut untuk membuat kunci dan memigrasikan database:
bundle exec rake generate_secret_token
RAILS_ENV=production bundle exec rake db:migrate
Konfigurasi Apache #
Beralih kembali ke pengguna sudo Anda dan buat file vhost Apache berikut:
/etc/httpd/conf.d/example.com.confexit
sudo nano /etc/httpd/conf.d/example.com.conf
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
DocumentRoot /opt/redmine/redmine-4.1.0/public
<Directory /opt/redmine/redmine-4.1.0/public>
Options Indexes ExecCGI FollowSymLinks
Require all granted
AllowOverride all
</Directory>
ErrorLog /var/log/httpd/example.com-error.log
CustomLog /var/log/httpd/example.com-access.log combined
</VirtualHost>
Jangan lupa untuk mengganti example.com dengan domain Redmine Anda. Mulai ulang layanan Apache dengan mengetik:
sudo systemctl restart httpd
Konfigurasi Apache dengan SSL #
Jika Anda tidak memiliki sertifikat SSL tepercaya untuk domain Anda, Anda dapat membuat sertifikat SSL Let's Encrypt gratis dengan mengikuti petunjuk berikut.
Setelah sertifikat dibuat, edit konfigurasi Apache sebagai berikut:
sudo nano /etc/httpd/conf.d/example.com.conf
/etc/httpd/conf.d/example.com.conf<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
Redirect permanent / https://example.com/
</VirtualHost>
<VirtualHost *:443>
ServerName example.com
ServerAlias www.example.com
Protocols h2 http/1.1
<If "%{HTTP_HOST} == 'www.example.com'">
Redirect permanent / https://example.com/
</If>
DocumentRoot /opt/redmine/redmine-4.1.0/public
ErrorLog /var/log/httpd/example.com-error.log
CustomLog /var/log/httpd/example.com-access.log combined
SSLEngine On
SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
<Directory /opt/redmine/redmine-4.1.0/public>
Options Indexes ExecCGI FollowSymLinks
Require all granted
AllowOverride all
</Directory>
</VirtualHost>
Jangan lupa untuk mengganti example.com dengan domain Redmine Anda dan atur jalur yang benar ke file sertifikat SSL. Semua permintaan HTTP akan dialihkan ke HTTPS. Mengakses Redmine #
Buka browser Anda, ketik domain Anda, dan dengan asumsi instalasi berhasil, layar yang mirip dengan berikut akan muncul:
Kredensial login default untuk Redmine adalah:
- Nama pengguna:admin
- Sandi:admin
Saat Anda masuk untuk pertama kali, Anda akan diminta untuk mengubah kata sandi, seperti yang ditunjukkan di bawah ini:
Setelah Anda mengubah kata sandi, Anda akan diarahkan ke halaman akun pengguna.
Jika Anda tidak dapat mengakses halaman tersebut, mungkin firewall Anda memblokir port port Apache.
Gunakan perintah berikut untuk membuka port yang diperlukan:
sudo firewall-cmd --permanent --zone=public --add-port=443/tcp
sudo firewall-cmd --permanent --zone=public --add-port=80/tcp
sudo firewall-cmd --reload