GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Instal Redmine 3 dengan Nginx di CentOS 7

Redmine adalah aplikasi web open source untuk manajemen proyek dan pelacak masalah. Redmine didasarkan pada Ruby on Rails Framework, ia memiliki dukungan lintas platform dan lintas basis data dan dikirimkan dengan terjemahan untuk 42 bahasa. Perangkat lunak ini memungkinkan Anda untuk melacak beberapa proyek, ini mengintegrasikan berita, dokumen dan manajemen file dan wiki dukungan per proyek. Akun pengguna dapat diautentikasi terhadap direktori LDAP dan perangkat lunak pihak ketiga dapat dihubungkan melalui REST API.

Dalam tutorial ini, kita akan menginstal Redmine 3.2 dengan Nginx sebagai web server, MySQL sebagai database server pada sistem operasi CentOS 7 (64 bit).

Prasyarat

  • CentOS 7 - 64 bit.
  • Hak istimewa root.

Langkah 1 - Instal dependensi Redmine

Redmine memiliki banyak sekali dependensi yang akan kita install terlebih dahulu. Masuk ke server CentOS 7 Anda sebagai pengguna root:

ssh [email protected]

Instal semua dependensi yang diperlukan oleh Redmine dan paket yang diperlukan untuk ruby ​​dan rvm dengan perintah yum di bawah ini:

yum install zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel mysql-devel ftp wget ImageMagick-devel gcc-c++ patch readline readline-devel zlib libyaml-devel libffi-devel make bzip2 autoconf automake libtool bison iconv-devel subversion

Instalasi akan meminta kata sandi MySQL. Ketik kata sandi root MySQL baru Anda saat diminta.

Langkah 2 - Instal Ruby dan RVM

Pada langkah ini, kita akan menginstal rvm (versi terbaru) dan ruby ​​2.2. Redmine 3.2 mendukung ruby ​​versi 2.2. RVM (Ruby Version Manager) adalah alat baris perintah yang memungkinkan Anda untuk menginstal, mengelola, dan bekerja dengan beberapa lingkungan Ruby di server yang sama.

gpg2 --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
curl -L https://get.rvm.io | bash -s stable --ruby=2.2.5

Ketika instalasi selesai, kita harus memuat ulang RVM dan menambahkannya ke file .bashrc untuk memuat ulang secara otomatis:

source /usr/local/rvm/scripts/rvm
echo '[[ -s "/usr/local/rvm/scripts/rvm" ]] && source "/usr/local/rvm/scripts/rvm"' >> ~/.bashrc

Muat ulang file .bashrc dan periksa versi Ruby dan RVM.

source ~/.bashrc
ruby -v
rvm -v

Langkah 3 - Konfigurasikan Database untuk Redmine

Pada langkah ini, kita akan menginstal paket mysql-server dari repositori resmi MySQL.

Tambahkan repositori Oracle MySQL dan periksa daftar repositori.

rpm -Uvh https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
yum repolist

untuk memastikan bahwa penyimpanan server MySQL telah berhasil ditambahkan.

Instal server MySQL dengan perintah yum ini.

yum install mysql-server

Ketika instalasi selesai, mulai layanan mysqld dan konfigurasikan kata sandi root MySQL.

systemctl start mysqld

Server MySQL telah dimulai. Sekarang dapatkan kata sandi root temporay untuk server mysql dengan perintah grep di bawah ini:

grep 'temporary password' /var/log/mysqld.log

Anda akan melihat hasil yang mirip dengan ini:

2016-10-31T23:06:50.974555Z 1 [Note] A temporary password is generated for [email protected]: />y.)uWui8j*

Jadi kita tahu password root untuk server MySQL adalah:/>y.)uWui8j*

Sekarang kita akan menetapkan kata sandi root baru untuk server mysql. Masuk ke shell mysql dengan root pengguna dan kata sandi yang dihasilkan:

mysql -u root -p
GENERATED PASSWORD: />y.)uWui8j*

Setel sandi pengguna root baru dengan kueri mysql di bawah:

ALTER USER 'root'@'localhost' IDENTIFIED BY '[email protected]!';

Selanjutnya, buat database baru bernama "redmine" dan buat pengguna baru 'redmine' dengan kata sandi 'redmine' (gunakan kata sandi aman di server Anda di sini!). Kemudian berikan semua hak istimewa bagi pengguna ke database 'redmine'.

create database redmine;
create user [email protected] identified by '[email protected]!';
grant all privileges on redmine.* to [email protected] identified by '[email protected]!';
flush privileges;
exit

Database dan pengguna telah dibuat.

Langkah 4 - Instal Phusion Passenger dan Nginx

Phusion Passenger adalah server aplikasi web yang dapat digunakan bersama dengan apache dan nginx. Ini mendukung banyak bahasa:Ruby, Python, dan Nodejs. Mudah bagi kami, cepat, dapat menangani lebih banyak lalu lintas, dan memberikan peningkatan keamanan.

Dalam bab ini, kita akan menginstal Phusion Passenger dan mengintegrasikannya dengan server web nginx kami. Instal penumpang dengan perintah gem di bawah ini, lalu jalankan perintah penumpang-nginx-module.

gem install passenger --no-ri --no-rdoc
passenger-install-nginx-module

Perintah akan menanyakan bahasa pemrograman mana yang akan digunakan, pilih Ruby dan Python .

Anda akan ditanya tentang instalasi nginx; pilih "Ya:unduh, kompilasi, dan instal Nginx untuk saya. (disarankan) ".

Anda akan diminta untuk direktori penginstalan nginx, gunakan default '/opt/nginx/' , cukup tekan "Enter ".

Langkah 5 - Konfigurasi Nginx

Setelah penginstalan nginx selesai, buka direktori penginstalan dan edit file nginx.conf dengan editor.

cd /opt/nginx/
cd conf/
vim nginx.conf

Rekatkan konfigurasi di bawah ini pada baris 24:

include vhost/*.conf;

Simpan file dan keluar dari editor.

Buat direktori 'vhost' baru untuk konfigurasi virtual host.

mkdir -p /opt/nginx/conf/vhost

Buka direktori vhost dan buat konfigurasi redmine virtualhost dengan vim:

cd /opt/nginx/conf/vhost/
vim redmine.conf

Tempel konfigurasi host virtual di bawah ini:

    server {
        listen       80;
        server_name  www.redmine.me;

        root /var/www/redmine/public;
        passenger_enabled on;
        client_max_body_size      10m; # Max attachemnt size

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

Simpan file.

Ubuntu 16.04 menggunakan systemd sebagai sistem init. Selanjutnya kita mengkonfigurasi nginx untuk systemd. Buka direktori systemd dan buat file layanan baru bernama 'nginx.service'.

cd /lib/systemd/system/
vim nginx.service

Rekatkan skrip nginx untuk systemd di bawah ini :

[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/opt/nginx/logs/nginx.pid
ExecStartPre=/opt/nginx/sbin/nginx -t
ExecStart=/opt/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

Simpan dan keluar.

Muat ulang layanan systemd dan coba mulai nginx dengan perintah systemctl:

systemctl daemon-reload
systemctl start nginx

Jika Anda ingin memeriksa nginx, periksa port yang terbuka 80:

netstat -plntu | grep nginx

Hasilnya harus seperti ini:

tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      4871/nginx

Langkah 6 - Instal Redmine

Buat direktori baru untuk instalasi Redmine. Saya akan menggunakan direktori '/var/www/' di sini.

mkdir -p /var/www/

Buka direktori '/var/www/' dan unduh Redmine dengan perintah svn:

cd /var/www/
svn co https://svn.redmine.org/redmine/branches/3.2-stable redmine

Buka direktori Redmine dan salin file konfigurasi dan file konfigurasi database:

cd redmine
cp config/configuration.yml.example config/configuration.yml
cp config/database.yml.example config/database.yml

Edit file database.yml dengan vim:

vim config/database.yml

Pada baris bagian produksi, isi database nama pengguna dan kata sandi:

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: "[email protected]!"
  encoding: utf8

Simpan file.

Di direktori redmine, buat beberapa direktori baru dan ubah pemiliknya menjadi user dan group none:

mkdir -p tmp tmp/pdf public/plugin_assets
sudo chown -R nobody:nobody files log tmp public/plugin_assets
sudo chmod -R 775 files log tmp public/plugin_assets

Instal bundler dan dependensi permata untuk redmine:

gem install bundler
bundle install --without development test

Hasilkan token rahasia, lalu buat database:

bundle exec rake generate_secret_token
RAILS_ENV=production bundle exec rake db:migrate
RAILS_ENV=production bundle exec rake redmine:load_default_data

Mulai ulang nginx dan kunjungi nama domain redmine dengan browser web:

systemctl restart nginx

Kunjungi instalasi redmine, milik saya adalah:www.redmine.co

Masuk ke halaman admin:www.redmine.co/login

Pengguna dan kata sandi default adalah 'admin'.

Buat proyek sampel baru.

Contoh Halaman Proyek.

Instalasi Redmine dengan Nginx dan MySQL di CentOS 7 telah berhasil.

Kesimpulan

Redmine adalah aplikasi berbasis web untuk manajemen proyek dan pelacakan masalah. Redmine bersifat cross-platform, jadi kita bisa menjalankannya di Windows, Linux atau Mac OS. Redmine memiliki dukungan untuk banyak database seperti MySQL, PostgreSQL, Microsoft SQL Server dan SQLite. Redmine mudah dipasang dan dikonfigurasi, kita bisa menggunakan Apache atau Nginx sebagai web server. Redmine sangat kuat dan memiliki banyak fitur seperti dukungan multi-bahasa, manajemen file, wiki, dan REST API. Redmine adalah salah satu solusi gratis terbaik jika Anda ingin membangun manajemen proyek Anda sendiri dengan pelacakan masalah.


Cent OS
  1. Cara Instal phpMyAdmin dengan Nginx di CentOS 7 / RHEL 7

  2. Cara Instal Redmine di CentOS 7

  3. Cara Instal Redmine di CentOS 8

  1. Cara Menginstal MySQL di CentOS 8

  2. Cara Menginstal WordPress dengan Nginx di CentOS 7

  3. Cara Menginstal MySQL 5.6 di CentOS 6.x

  1. Cara Instal phpMyAdmin dengan Nginx di CentOS 7

  2. Cara Menginstal MySQL di CentOS 8

  3. Cara Menginstal SuiteCRM dengan Nginx di CentOS 7