Android

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

Total Health Alliance - Issue Tracker

Total Health Alliance - Issue Tracker

Mục lục:

Anonim

Redmine là một ứng dụng theo dõi vấn đề và quản lý dự án mã nguồn mở và miễn phí. 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ẽ chỉ cho bạn cách cài đặt và định cấu hình phiên bản Redmine mới nhất trên máy chủ Debian 9 bằng cách sử dụng MySQL làm cơ sở dữ liệu phụ trợ và Hành khách + 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:

  • Có một tên miền trỏ đến IP công cộng máy chủ của bạn. 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 Nginx. Đã cài đặt chứng chỉ SSL cho miền của bạn.

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

Redmine hỗ trợ MySQL / MariaDB, Microsoft SQL Server, SQLite 3 và PostgreSQL. Chúng tôi sẽ sử dụng MariaDB làm cơ sở dữ liệu phụ trợ. Đảm bảo bạn đã cài đặt ít nhất MySQL 5.7 hoặc MariaDB 10.3 trên máy của mình.

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

Bắt đầu bằng cách đăng nhập vào bảng điều khiển MySQL bằng cách gõ:

sudo mysql

Chạy câu lệnh SQL sau để tạo cơ sở dữ liệu mới:

CREATE DATABASE redmine CHARACTER SET utf8mb4;

Tạo tài khoản người dùng MySQL mới 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'; Đừng quên thay change-with-strong-password thay change-with-strong-password mạnh.

Sau khi hoàn tất, hãy đăng xuất khỏi bảng điều khiển MariaDB bằng cách nhập:

EXIT;

Cài đặt Ruby

Cách dễ nhất để cài đặt Ruby trên Debian là sử dụng trình quản lý gói apt :

Cài đặt Ruby bằng cách gõ:

sudo apt install ruby-full

Tại thời điểm viết bài, phiên bản trong kho Debian là phiên bản 2.3.3p222 , được hỗ trợ bởi phiên bản mới nhất của Redmine.

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.

Đảm bảo Nginx được cài đặt trước khi tiếp tục các bước sau.

Cài đặt các gói cần thiết để kích hoạt kho lưu trữ

sudo apt install dirmngr gnupg apt-transport-https ca-certificates software-properties-common

Nhập khóa GPG của kho lưu trữ và kích hoạt kho lưu trữ Phusionpasbah:

sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 561F9B9CAC40B2F7 sudo add-apt-repository 'deb https://oss-binaries.phusionpassenger.com/apt/passenger stretch main'

Cập nhật danh sách các gói và cài đặt mô-đun Nginx của Hành khách với:

sudo apt update sudo apt install libnginx-mod-http-passenger

Cài đặt Redmine trên Debian

Bắt đầu bằng cách cài đặt các phụ thuộc cần thiết để xây dựng Redmine:

sudo apt install build-essential libmariadbclient-dev imagemagick libmagickwand-dev curl ruby-dev libxslt-dev libxml2-dev zlib1g-dev

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.4.

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

1. Đang tải xuống Redmine

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

sudo curl -L http://www.redmine.org/releases/redmine-4.0.4.tar.gz -o /tmp/redmine.tar.gz

Khi quá trình tải xuống hoàn tất, giải nén tệp lưu trữ và chuyển nó vào thư mục /opt :

cd /tmp sudo tar zxf /tmp/redmine.tar.gz sudo mv /tmp/redmine-4.0.4 /opt/redmine

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

Sao chép tệp cấu hình ví dụ Redmine:

sudo cp /opt/redmine/config/database.yml.example /opt/redmine/config/database.yml

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

sudo nano /opt/redmine/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/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 và cài đặt gói và các phụ thuộc Ruby khác:

cd /opt/redmine/ sudo gem install bundler --no-rdoc --no-ri sudo 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:

cd /opt/redmine/ sudo bundle exec rake generate_secret_token sudo RAILS_ENV=production bundle exec rake db:migrate

5. Đặt quyền chính xác

Nginx chạy như người dùng và nhóm www-data . Đặt quyền chính xác bằng cách ban hành lệnh chown sau:

sudo chown -R www-data: /opt/redmine/

Cấu hình Nginx

Đến bây giờ, bạn đã có Nginx với chứng chỉ SSL được cài đặt trên hệ thống của bạn, nếu không kiểm tra các điều kiện tiên quyết cho hướng dẫn này.

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/sites-available/example.com /etc/nginx/sites-av Available / example.com

# 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/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 HTTPS. Các đoạn được sử dụng trong cấu hình này được tạo trong hướng dẫn này.

Kích hoạt khối máy chủ bằng cách tạo một liên kết tượng trưng đến thư mục sites-enabled :

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

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

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 Debian 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.

debian redmine ruby ​​mysql nginx