Android

Cách cài đặt và cấu hình redmine trên centos 7

[LINUX] - #17 Installare redmine 3.3.3 su Centos 7

[LINUX] - #17 Installare redmine 3.3.3 su Centos 7

Mục lục:

Anonim

Redmine là một trong những công cụ phần mềm theo dõi vấn đề và quản lý dự án nguồn mở phổ biến nhất. Nó là nền tảng chéo và cơ sở dữ liệu chéo và được xây dựng dựa trên khung Ruby on Rails.

Redmine bao gồm hỗ trợ cho nhiều dự án, wiki, hệ thống theo dõi vấn đề, diễn đàn, lịch, thông báo email, và nhiều hơn nữa.

Trong hướng dẫn này, chúng tôi sẽ đề cập đến các bước cần thiết để cài đặt và định cấu hình phiên bản Redmine mới nhất trên máy chủ CentOS 7 bằng MariaDB làm cơ sở dữ liệu phụ trợ và Pasbah + Nginx làm máy chủ ứng dụng Ruby.

Điều kiện tiên quyết

Hãy chắc chắn rằng bạn đã đáp ứng các điều kiện tiên quyết sau đây trước khi tiếp tục với hướng dẫn này:

  • Tên miền trỏ đến IP công cộng của máy chủ của bạn. Trong hướng dẫn này, chúng tôi sẽ sử dụng example.com Đăng nhập với tư cách là người dùng có quyền sudo.

Cài đặt các gói cần thiết để xây dựng Redmine và Ruby từ nguồn:

sudo yum install curl gpg gcc gcc-c++ make patch autoconf automake bison libffi-devel libtool sudo yum install readline-devel sqlite-devel zlib-devel openssl-develh readline glibc-headers glibc-devel sudo yum install mariadb-devel zlib libyaml-devel bzip2 iconv-devel ImageMagick ImageMagick-devel

Tạo cơ sở dữ liệu MySQL

Redmine hỗ trợ MySQL / MariaDB, Microsoft SQL Server, SQLite 3 và PostgreSQL. Trong hướng dẫn này, chúng tôi sẽ sử dụng MariaDB làm cơ sở dữ liệu phụ trợ.

Nếu bạn chưa cài đặt MariaDB hoặc MySQL trên máy chủ CentOS của mình, bạn có thể cài đặt nó bằng cách làm theo các hướng dẫn sau.

Đăng nhập vào vỏ MySQL bằng cách gõ lệnh sau:

sudo mysql

Từ trong shell của MySQL, hãy chạy câu lệnh SQL sau để tạo cơ sở dữ liệu mới:

CREATE DATABASE redmine CHARACTER SET utf8;

Tiếp theo, tạo tài khoản người dùng MySQL và cấp quyền truy cập vào cơ sở dữ liệu:

GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password'; Đảm bảo bạn thay change-with-strong-password thay change-with-strong-password mạnh.

Sau khi hoàn thành, thoát khỏi vỏ mysql bằng cách gõ:

EXIT;

Cài đặt hành khách và Nginx

Hành khách là một máy chủ ứng dụng web nhanh và nhẹ dành cho Ruby, Node.js và Python có thể được tích hợp với Apache và Nginx. Chúng tôi sẽ cài đặt Hành khách như một mô-đun Nginx.

Cài đặt kho EPEL và các gói cần thiết:

sudo yum install epel-release yum-utils pygpgme sudo yum-config-manager --enable epel sudo yum install epel-release yum-utils pygpgme

Kích hoạt kho lưu trữ Phusionpasbah:

sudo yum-config-manager --add-repo

Khi kho lưu trữ được bật, hãy cập nhật danh sách các gói và cài đặt cả Nginx và Hành khách với:

sudo yum install nginx passenger passenger-devel

Tạo người dùng hệ thống mới

Tạo một người dùng và nhóm mới, sẽ chạy phiên bản Redmine, để đơn giản, chúng tôi sẽ đặt tên cho người dùng redmine :

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

Thêm người dùng nginx vào nhóm người dùng mới và thay đổi quyền thư mục /opt/redmine để Nginx có thể truy cập vào nó:

sudo usermod -a -G redmine nginx sudo chmod 750 /opt/redmine

Cài đặt Ruby

Phiên bản của Ruby trong kho lưu trữ của CentOS khá lỗi thời và không được Redmine hỗ trợ. Chúng tôi sẽ cài đặt Ruby bằng RVM.

Chuyển sang redmine người dùng bằng cách gõ:

sudo su - redmine

Nhập khóa GPG và cài đặt RVM:

gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB curl -sSL https://get.rvm.io | bash -s stable

Để bắt đầu sử dụng nguồn RVM, tệp rvm :

source /opt/redmine/.rvm/scripts/rvm

Bây giờ chúng ta có thể cài đặt Ruby bằng cách chạy:

rvm install 2.5 rvm --default use 2.5 Nếu bạn muốn cài đặt Ruby qua Rbenv, hãy xem hướng dẫn này.

Cài đặt Redmine trên CentOS

Tại thời điểm viết bài viết này, phiên bản ổn định mới nhất của Redmine là phiên bản 4.0.1.

Trước khi tiếp tục các bước tiếp theo, bạn nên kiểm tra trang tải xuống Redmine để xem có phiên bản mới hơn không.

Hãy chắc chắn rằng bạn đang chạy các bước sau với tư cách là người dùng redmine .

1. Đang tải xuống Redmine

Tải xuống kho lưu trữ Redmine bằng lệnh curl sau:

curl -L http://www.redmine.org/releases/redmine-4.0.1.tar.gz -o redmine.tar.gz

Khi quá trình tải xuống hoàn tất, giải nén tệp lưu trữ:

tar -xvf redmine.tar.gz

2. Cấu hình cơ sở dữ liệu Redmine

Sao chép tệp cấu hình cơ sở dữ liệu ví dụ Redmine:

cp /opt/redmine/redmine-4.0.1/config/database.yml.example /opt/redmine/redmine-4.0.1/config/database.yml

Mở tệp bằng trình soạn thảo văn bản của bạn:

nano /opt/redmine/redmine-4.0.1/config/database.yml

Tìm kiếm phần production và nhập cơ sở dữ liệu MySQL và thông tin người dùng chúng tôi đã tạo trước đây:

/opt/redmine/redmine-4.0.1/config/database.yml

production: adapter: mysql2 database: redmine host: localhost username: redmine password: "change-with-strong-password" encoding: utf8

Sau khi hoàn tất, lưu tệp và thoát khỏi trình chỉnh sửa.

3. Cài đặt phụ thuộc Ruby

Điều hướng đến thư mục redmine-4.0.1 và cài đặt gói và các phụ thuộc Ruby khác:

cd ~/redmine-4.0.1 gem install bundler --no-rdoc --no-ri bundle install --without development test postgresql sqlite

4. Tạo khóa và di chuyển cơ sở dữ liệu

Chạy lệnh sau để tạo khóa và di chuyển cơ sở dữ liệu:

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

Cấu hình Nginx

Chuyển về người dùng sudo của bạn:

exit

Mở trình soạn thảo văn bản của bạn và tạo tệp khối máy chủ Nginx sau:

sudo nano /etc/nginx/conf.d/example.com.conf /etc/nginx/conf.d/example.com

passenger_root /usr/share/ruby/vendor_ruby/phusion_passenger/locations.ini; passenger_ruby /opt/redmine/.rvm/gems/default/wrappers/ruby; passenger_instance_registry_dir /var/run/passenger-instreg; server { listen 80; server_name example.com www.example.com; root /opt/redmine/redmine-4.0.1/public; # log files access_log /var/log/nginx/example.com.access.log; error_log /var/log/nginx/example.com.error.log; passenger_enabled on; passenger_min_instances 1; client_max_body_size 10m; } Đừng quên thay thế example.com bằng tên miền Redmine của bạn.

Trước khi khởi động lại dịch vụ Nginx, hãy kiểm tra để chắc chắn rằng không có lỗi cú pháp:

sudo nginx -t

Nếu không có lỗi, đầu ra sẽ trông như thế này:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful

Cuối cùng, khởi động lại dịch vụ Nginx bằng cách gõ:

sudo systemctl restart nginx

Định cấu hình Nginx với SSL

Khi chứng chỉ được tạo, chỉnh sửa cấu hình Nginx của miền như sau:

sudo nano /etc/nginx/conf.d/example.com.conf /etc/nginx/conf.d/example.com

passenger_root /usr/share/ruby/vendor_ruby/phusion_passenger/locations.ini; passenger_ruby /opt/redmine/.rvm/gems/default/wrappers/ruby; passenger_instance_registry_dir /var/run/passenger-instreg; # Redirect HTTP -> HTTPS server { listen 80; server_name www.example.com example.com; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } # Redirect WWW -> NON WWW server { listen 443 ssl http2; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name example.com; root /opt/redmine/redmine-4.0.1/public; # SSL parameters ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; include snippets/letsencrypt.conf; # log files access_log /var/log/nginx/example.com.access.log; error_log /var/log/nginx/example.com.error.log; passenger_enabled on; passenger_min_instances 1; client_max_body_size 10m; } Đừng quên thay thế example.com bằng tên miền Redmine của bạn và đặt đường dẫn chính xác đến các tệp chứng chỉ SSL. Tất cả các yêu cầu HTTP sẽ được chuyển hướng đến

Truy cập Redmine

Mở trình duyệt của bạn, nhập tên miền của bạn và giả sử cài đặt thành công, một màn hình tương tự như sau sẽ xuất hiện:

Khi bạn thay đổi mật khẩu, bạn sẽ được chuyển hướng đến trang tài khoản người dùng.

Phần kết luận

Bạn đã cài đặt thành công Redmine trên hệ thống CentOS của bạn. Bây giờ bạn nên kiểm tra Tài liệu Redmine và tìm hiểu thêm về cách định cấu hình và sử dụng Redmine.

centos redmine ruby ​​mysql mariadb nginx