Ubuntu 20.04下使用apt安裝Redmine

前言

本篇記錄筆者照著How To Install Redmine on Ubuntu 20.04 Linux的步驟架設Redmine所碰到的坑及解決方式。

注意如果使用apt安裝redmine,只能安裝4.0.6版。如果想要安裝最新的版本,則需採取手動安裝。

步驟

Step 1: Connect to server and update

sudo apt update -y
sudo apt upgrade -y
#sudo reboot #這步不做也行

Step 2: Install MariaDB Database Server

sudo apt update -y
sudo apt install mariadb-server -y

Step 3: Create Database for Redmine

sudo mysql -u root -p

密碼為空,按Enter直接進入。

CREATE DATABASE redmine CHARACTER SET utf8mb4;
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'RedmineDBP@ssw0rd';
FLUSH PRIVILEGES;
EXIT;

Step 4: Install Apache, Ruby and Passenger

sudo apt install apache2 libapache2-mod-passenger -y

Step 5: Install Redmine on Ubuntu 20.04

sudo apt install redmine redmine-mysql -y

這一步會需要創建database:
package_configuration
設定database的密碼:
package_configuration_password
確認database的密碼:
package_configuration_password_confirmation
執行log:
log
log2

如果在執行過程中,出現以下警告:

`/var/www` is not writable.
Bundler will use `/tmp/bundler20201210-9763-hx0jpc9763' as your home directory temporarily.

則需要更改/var/www的訪問權限:

sudo chmod 777 /var/www

接著:

sudo gem update

如果這一步出現以下錯誤:

Building native extensions. This could take a while...
ERROR:  Error installing atomic:
        ERROR: Failed to build gem native extension.

    current directory: /var/lib/gems/2.7.0/gems/atomic-1.1.101/ext
/usr/bin/ruby2.7 -I /usr/lib/ruby/2.7.0 -r ./siteconf20210413-51767-ruoui0.rb extconf.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h

You might have to install separate package for the ruby development
environment, ruby-dev or ruby-devel for example.

extconf failed, exit code 1

參考Error while installing json gem ‘mkmf.rb can’t find header files for ruby’,可以藉由安裝ruby-dev來解決:

sudo apt install ruby-dev -y

sudo gem update這一步的依賴很多,如果找不到就會報類似上面的錯誤,需要自己從log中尋找package關鍵字,然後用apt安裝,以下是筆者環境需安裝的package:

sudo apt install build-essential libffi-dev libmysqlclient-dev libreadline8 libreadline-dev libmagickwand-dev -y

接著:

sudo gem install bundler
sudo tee /etc/apache2/mods-available/passenger.conf<<EOF
<IfModule mod_passenger.c>
  PassengerDefaultUser www-data
  PassengerRoot /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini
  PassengerDefaultRuby /usr/bin/ruby
</IfModule>
EOF
sudo ln -s /usr/share/redmine/public /var/www/html/redmine

底下分為透過domain name或ip address訪問Redmine網頁兩種方式,因為第一種方式需要自己的域名,所以在此採用的是第二種方式。

Access Redmine web console with IP Address

修改Apache默認的設置:

sudo tee /etc/apache2/sites-available/000-default.conf<<EOF
<VirtualHost *:80>
  ServerAdmin webmaster@localhost
  DocumentRoot /var/www/html
  ErrorLog ${APACHE_LOG_DIR}/error.log
  CustomLog ${APACHE_LOG_DIR}/access.log combined
  <Directory /var/www/html/redmine>
    RailsBaseURI /redmine
    PassengerResolveSymlinksInDocumentRoot on
  </Directory>
</VirtualHost>
EOF

注意連結裡的\${APACHE_LOG_DIR}/error.log\${APACHE_LOG_DIR}/access.log是錯的。

接著:

sudo touch /usr/share/redmine/Gemfile.lock
sudo chown www-data:www-data /usr/share/redmine/Gemfile.lock
sudo a2enmod passenger
sudo systemctl restart apache2

然後在瀏覽器中訪問http://<your_ip_addr>/redmine即可看到Redmine頁面。

如果看到的是以下頁面:
redmine_fail
可能是部份目錄的權限設定有問題,可用嘗試以下指令:

sudo chown -R www-data:www-data /usr/share/redmine
sudo chown -R www-data:www-data /tmp
sudo chown -R www-data:www-data /var/lib/redmine

如果要登入Redmine,使用admin/admin這組默認的帳號密碼。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值