2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Raspberry Pi3B+でRedmineサーバーを構築してみた

Last updated at Posted at 2021-04-17

概要

RaspberryPi3B+でRedmineを構築し、自宅で24H365Dでの常時稼働をさせます。
今回は、3B+から可能になったMicroSD以外のストレージからの起動を利用して、MicroSDを利用せずに64GBの余っていたUSBメモリに全部入れて動かします。

構築後の状態

Raspbianを使わず、Ubuntu20.04LTS(64bit)を使用します。
(せっかくarm64対応なので・・・)

所感

ラズパイで動くからしょうがないよね。と思うぐらい投稿や設定などの反映などあらゆる箇所で「ぐぬぬぬ」というぐらい待たされます。ラズパイ4ならもっと速いと思うのですが、この辺りを留意してもらえれば読み進めてください。

必要なもの

  • RaspberryPi3B+
  • 最初の設定時は、キーボード(USB)とHDMI出力でディスプレイ、有線LANが必要です。
  • USBメモリ(64GB)
  • 別途macOSやWindows、LinuxなどのPCが必要です。(今回はWindows10のPCを使用してます)
  • USBメモリにOSを入れるとき
  • SSHで接続するとき

やってみる

STEP1:USBメモリにUbuntu20.04LTSを書き込む

まずは、USBメモリにUbuntu20.04LTSを入れます。

RaspberryPiのサイトに行き、Pi-ImagerをDLしてWindowsPCにインストールします。
https://www.raspberrypi.org/software/
rasp3bp001.PNG

Pi-Imagerをインストールしたら、USBメモリをPCにさして、Pi-Imagerを起動します。

Pi-Imager v1.6.1
rasp3bp002.JPG

「CHOOSE OS」では、「other general purpose OS」-「Ubuntu」-「Ubuntu Server20.04.2LTS(RPi3/4/400)[64bit]
「CHOOSE STORAGE」では、挿入したUSBメモリを選択します。
「WRITE」ボタンを押して、書き込みます。
※ざっと20分ぐらいかかるでしょうか・・・

STEP2:Raspberry Pi3B+にUbuntuセットアップ

STEP1で作成したUSBメモリをRaspberryPi3B+のUSBポートに挿して電源ONにします。
(記載してませんが、HDMIにディスプレイ、USBにキーボード、LANポートにLANケーブルを接続しておいてください)
→よくやらかしますが、microSDは抜いておいてください。(どっちが起動してるかわからなくなるので)

起動したら、ログイン画面が表示されます。

Ubuntu 20.04.01 LTS ubuntu tty1

ubuntu login: ubuntu
Password:

初回は、idが「ubuntu」でpasswordも「ubuntu」です。
ログインすると、そのままpasswordの変更を要求されますので、変更してください。

★Ubuntuでは、初期状態でSSHがonになっているので、これ以降は、RaspberryPi側のディスプレイ、キーボードを抜いて、ほかのPCからTeraterm等でSSH接続して進めることができます。

OSをひとまず最新にします。(Pi-Imagerで最新を入れても最新ではないです)

$ sudo apt update
$ sudo apt upgrade -y
$ sudo apt dist-upgrade

$ sudo reboot

STEP3:諸々設定する

RedmineセットアップでSwap領域が足りない(3B+は1GBのメモリしかない)とか言われますので、いろいろ設定します。

SWAP領域を4GB確保する

下記を実行して、Swap領域を作成します。(4GBも要らないので2GBでもいいです)

$ sudo fallocate -l 4G /swapfile
$ sudo chmod 600 /swapfile
$ sudo mkswap /swapfile
$ sudo swapon /swapfile
$ echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

一応、上記で再起動してもSwap領域が確保された状態になります。
Swap領域があるかは下記で確認します。

$ free

Hostnameを変更する

Hostnameの確認

$ sudo hostname

Hostnameを変更する。今回は「rasp3bp」にしてみる。

$ sudo hostnamectl set-hostname rasp3bp
$ sudo hostnamectl

   Static hostname: rasp3bp
         Icon name: computer
        Machine ID: 00000000000000000000000000000000
           Boot ID: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  Operating System: Ubuntu 20.04.2 LTS
            Kernel: Linux 5.4.0-1033-raspi
      Architecture: arm64

Localeを変更する

Redmineで日本語の問題が出るので、ここでいろいろしておく。

$ sudo apt -y install language-pack-ja-base language-pack-ja
$ sudo localectl set-locale LANG=ja_JP.UTF-8
$ sudo localectl

   System Locale: LANG=ja_JP.UTF-8
       VC Keymap: n/a
      X11 Layout: us
       X11 Model: pc105

TimezoneをAsia/Tokyoにする

UTCになってるので、日本時間にする

$ sudo timedatectl set-timezone Asia/Tokyo
$ sudo timedatectl

               Local time: Wed 2021-04-14 21:27:19 JST
           Universal time: Wed 2021-04-14 12:27:19 UTC
                 RTC time: n/a
                Time zone: Asia/Tokyo (JST, +0900)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

STEP4:Redmineをインストールする

いざ、Redmineをインストールしますが、個人で使うのでSqliteを使います。(複数人同時接続では推奨されてない)

※インストールには数時間かかるので耐えましょう。

$ sudo apt install redmine-sqlite
$ sudo apt install apache2 libapache2-mod-passenger bundler imagemagick libmagick++-dev

000-default.confを編集します。

$ sudo vi /etc/apache2/sites-available/000-default.conf

「redmine-sqlite」を使ってインストールすると、redmineは「/usr/lib/redmine」に配置されます。
併せて、書き換えます。

000-default.conf
<VirtualHost *:80>
    DocumentRoot /usr/share/redmine/public
    PassengerHighPerformance on
    <Directory /usr/share/redmine/public>
	    Allow from all
	    Options -MultiViews
	    Require all granted
    </Directory>
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

続いて、passenger.confを編集します。

$ sudo vi /etc/apache2/mods-available/passenger.conf
passenger.conf
<IfModule mod_passenger.c>
  PassengerRoot /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini
  PassengerDefaultRuby /usr/bin/ruby
  PassengerDefaultUser www-data
  RailsBaseURI /redmine
</IfModule>

最後に、Apache2.4を再起動します。

$ sudo service apache2 restart

STEP5:Redmineを設定する

Apacheを再起動後、Passengerが起動し終わるまで結構かかります。(10分とかw)
しっかり時間をおいてから、Redmineへアクセスします。

※今回は、サブディレクトリでredmineを提供してません。
Webブラウザで下記のように入力してアクセスしてみてください。

http://(サーバーのIP)/

無事RedmineのTOP画面が出てきたら、Redmineを使い始めます。

REDMINE.JPのページを参考にしてユーザーを作ったり、プロジェクトを作ったりして使い始めます。
https://redmine.jp/tech_note/first-step/admin/

あとがき

今回、RaspberryPi3B+を購入して、全然使っていなかったことからRedmineを立ち上げる流れになったのですが、Ubuntu20.04にRedmine4.1を入れる手順を進めても途中で止まってしまい、Raspbianで試しても止まってしまう(半日以上放置してたんですがすすまない)
redmine-sqliteという方法でインストールしようと思ったが、raspbianでは提供されておらず、残った手段を探してこうなったという感じです。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?