Cài Đặt Redmine với KUSANAGI - MTD SEC

MTD SEC

Chia Sẻ Để Thành Công

Home Top Ad

Post Top Ad

Thứ Hai, 14 tháng 1, 2019

Cài Đặt Redmine với KUSANAGI


Hãy sử dụng Rails với KUSANAGI Lần này, tôi sẽ cài đặt Redmine trong môi trường Rails bằng Ruby 2.4 được thêm vào từ KUSANAGI 8.1.0. Redmine là phần mềm quản lý dự án nguồn mở. Nó là một công cụ để quản lý công việc, quản lý tiến độ, chia sẻ thông tin và được nhiều công ty sử dụng.





Lần này, tôi sẽ thử sử dụng KUSANAGI cho Vagrant. KUSANAGI cho Vagrant có thể dễ dàng sử dụng KUSANAGI bằng cách sử dụng VirtualBox có thể được sử dụng trong Windows và macOS ở bất kỳ nhà nào. Trước hết , tải xuống và cài đặt VirtualBox trên HĐH của bạn . Sau đó, tải xuống và cài đặt Vagrant , phần mềm xây dựng và định cấu hình máy ảo . Vui lòng chọn mục tiêu sẽ được tải xuống theo hệ điều hành của bạn. Ngoài ra, nếu bạn đang sử dụng tên người dùng Nhật Bản trên Windows, Vagrant sẽ không chạy được. Để biết chi tiết, tham khảo tài liệu của KUASANAGI cho Vagrant .





Chuẩn bị Image VirtualBox của KUSANAGI









Sau khi cài đặt Vagrant, chúng tôi chuẩn bị sử dụng KUSANAGI cho Vagrant. Tạo một thư mục thích hợp và thực hiện lệnh init vagrant để khởi tạo Vagrant. Sau đây là một ví dụ về thực thi trên Windows.






Vagrant.configure("2") do |config|

config.vm.box = "yuya_tajima/kusanagi"

config.vm.network "forwarded_port", guest: 22, host: 10021, id: "ssh"

config.vm.network "private_network", ip: "192.168.33.10"

config.vm.provider "virtualbox" do |vb|

vb.memory = "1024"

end

config.vm.provision "shell", inline: <<-SHELL

sudo yum clean all

sudo yum -y --enablerepo=remi,remi-php56 update 2>&1 > /dev/null

sudo reboot

SHELL

end









Tại đây, Vagrant tải xuống hình ảnh VirtualBox của KUSANAGI và tạo một tệp cấu hình có tên Vagrantfile. Trước hết, tôi cũng sẽ tạo ra một hình ảnh mà tôi đã cập nhật yum cho tương lai. Sửa đổi Vagrantfile như sau.





> vagrant.exe up

> vagrant.exe halt

> vagrant.exe package –output kusanagi.local

> vagrant.exe box add kusanagi_20181101 kusanagi.local

> vagrant.exe box list

kusanagi_20181101 (virtualbox, 0)

yuya_tajima/kusanagi (virtualbox, 0.1)

> vagrant.exe destroy

default: Are you sure you want to destroy the 'default' VM? [y/N] y

==> default: Destroying VM and associated drives...




Tạo VirtualBox với KUSANAGI mới nhất bằng lệnh sau và đăng ký hình ảnh mới nhất này trong hình ảnh sử dụng Vagrant. Bạn có thể xóa hình ảnh này sau khi đăng ký.





> vagrant.exe up
> vagrant.exe halt
> vagrant.exe package –output kusanagi.local
> vagrant.exe box add kusanagi_20181101 kusanagi.local
> vagrant.exe box list
kusanagi_20181101 (virtualbox, 0)
yuya_tajima/kusanagi (virtualbox, 0.1)
> vagrant.exe destroy
default: Are you sure you want to destroy the 'default' VM? [y/N] y
==> default: Destroying VM and associated drives...




Chuẩn bị môi trường Rails Tiếp theo, tạo một máy ảo cho môi trường Rails trong một thư mục riêng





> mkdir ..\redmine
> cd ..\redmine
> vagrant.exe init




Sau khi tạo thư mục khác, kusanagi init, vui lòng sửa Vagrantfile như sau.





Vagrant.configure("2") do |config|
config.vm.box = "kusanagi_20181101"
config.vm.network "forwarded_port", guest: 22, host: 10022, id: "ssh"
config.vm.network "private_network", ip: "192.168.33.11"
config.vm.provider "virtualbox" do |vb|
vb.memory = "4096"
end
config.vm.provision "shell", inline: <<-SHELL
export TERM=xterm
export KUSANAGI_PASSWORD=`mkpasswd -l 20`
export DBROOTPASS=`mkpasswd -s 0 -l 20`
export SITE_DOMAIN=redmine.localdomain
export DBNAME=`mkpasswd -s 0 -l 10`
export DBUSER=`mkpasswd -s 0 -l 10`
export DBPASS=`mkpasswd -s 0 -l 20`
export EMAILOPTION=--no-email
sudo yum clean all
echo yum update
sudo kusanagi init --tz tokyo --lang en --keyboard en --passwd $KUSANAGI_PASSWORD --no-phrase --dbrootpass "$DBROOTPASS" --php7 --nginx --ruby24 --dbsystem mariadb
sudo kusanagi provision --rails --fqdn $SITE_DOMAIN $EMAILOPTION --dbname $DBNAME --dbuser $DBUSER --dbpass "$DBPASS" redmine
sudo reboot
SHELL
end




Vui lòng chỉ định một FQDN tùy ý cho SITE_DOMAIN ở trên. Tại đây, khi bạn thực thi lệnh vagrant.exe, môi trường Rails mới nhất được tạo trong / home / kusanagi / redmine. Tuy nhiên, vì môi trường này khác với môi trường được đề xuất của Redmine, nó sẽ bị xóa và xóa. Lần tới, chúng tôi sẽ cài đặt và định cấu hình Redmine, vì vậy hãy chờ đón nó.





Cài đặt Redmine





Cài đặt redmine. Cài đặt được hoàn thành bằng cách thực hiện lệnh sau





# cd /home/kusanagi
# rm –rf redmine
# git clone –b 3.4-stable https://github.com/redmine/redmine.git
# chown -R kusanagi:kusanagi redmine
# cd redmine
# chown -R httpd:www tmp files public/plugin_assets
# mkdir -m 775 log/nginx log/httpd
# chown -R kusanagi:www log
# chmod 775 log




Cấu hình MySQL





Khi Redmine và mã ký tự là utf8mb, vì chỉ mục quá dài, hãy sửa đổi cài đặt InnoDB như sau và khởi động lại mysql.





# systemctl dừng mysql
# awk '{print} / innodb_thread_concurrency = 8 / {printf "innodb_file_format = Barracuda \ ninnodb_file_per_table = 1 \ ninnodb_large_prefix = 1 \ n"}' /etf /
# systemctl bắt đầu mysql




Cài đặt NGINX





Để thay đổi chủ sở hữu / nhóm Hành khách được sử dụng trong môi trường Rails của KUSANAGI, hãy thêm phần đỏ redmine_http.conf và redmine_ssl.conf dưới / etc / nginx / conf.d. Ngoài ra, để thực thi trong môi trường sản xuất, bỏ ghi chú dòng sản xuất rails_env và nhận xét dòng của rails_env develoment;





                passenger_ruby /usr/local/bin/ruby;
passenger_min_instances 6;
passenger_user httpd;
passenger_group www;

# rails_env development;
rails_env production;
#rails_env production;




Ngoài ra, khi sử dụng Hãy mã hóa trong môi trường rails, hãy tạo thư mục /var/www/html/.well- Unknown và thêm dòng sau vào "location ~ / fcache-purge / ([^ /]" trong redmine_ssl.conf +) (/.*) Thêm vào dòng trước {}.





 
location ~* /\.well-known {
Alias /var/www/html/.well-known;
}




Sau đó, vui lòng khởi động lại NGINX. Để đặt chứng chỉ SSL theo cách thủ công với Let Encrypt, vui lòng khởi động certbot theo cách thủ công như sau.





# /usr/local/certbot/certbot-auto --text --noninteractivce --webroot -w /var/www/httpd -m メールアドレス -d ドメイン名 --agree-tos




Triển khai Redmine





Thay đổi cài đặt DB cho Redmine.





# sed -e "s/database: .*$/database: $DBNAME/" -e "s/username: .*$/username: $DBUSER/" -e "s/password: .*$/password: \"$DBP
ASS\"/" -e "s/encoding: .*$/encoding: utf8mb4/" config/database.yml.example > config/database.yml




Trong rails, để sử dụng utf8mb4 làm mã ký tự INNODB, hãy tạo tệp config / khởi tạo / ar_innodb_row_format.rb với các nội dung sau.





# cat < config/initializers/ar_innodb_row_format.rb
ActiveSupport.on_load :active_record do
module ActiveRecord::ConnectionAdapters
class AbstractMysqlAdapter
def create_table_with_innodb_row_format(table_name, options = {})
table_options = options.merge(:options => 'ENGINE=InnoDB ROW_FORMAT=DYNAMIC')
create_table_without_innodb_row_format(table_name, table_options) do |td|
yield td if block_given?
end
end
alias_method_chain :create_table, :innodb_row_format
end
end
end
EOF




Cuối cùng, chúng tôi sẽ triển khai redmine. Hãy thay đổi chủ sở hữu / nhóm nhật ký thành httpd: www.





# bundle install --without development test postgresql sqlite3
# rake generate_secret_token
# RAILS_ENV=production rake db:migration
# RAILS_ENV=production rake db:migrate
# echo ja | RAILS_ENV=production rake redmine:load_default_data
# find /home/kusanagi/redmine/log -name '*.log' | xargs chown httpd:www




Sau khi khởi động lại máy chủ, hãy truy cập máy chủ redmine bằng trình duyệt web. Bạn truy cập với tên máy chủ được đặt trong $ SITE_DOMAIN ở trên.









Bạn có thể đăng nhập bằng tên người dùng "admin" và mật khẩu "admin" bằng cách nhấn nút đăng nhập. Ngay lập tức, màn hình thay đổi mật khẩu sẽ di chuyển, vui lòng thay đổi mật khẩu.


Không có nhận xét nào:

Đăng nhận xét

Post Top Ad