Linux環境(Rocky Linuxを使った)絶対に失敗しないRedmine環境の作り方レシピ〜改良版〜
redmine rockyで調べてもらうとかなり上位にくるこの記事!
皆様のアクセスありがとうございます!誰かの役に立ててるなら本望です。
しかし、この記事、Rocky9だとうまくいかないのでは?(なんかrubyを手動でインストールできないとかの罠にハマりまくりました…)
そこで、今回は前回の記事のブラッシュアップ版!
しかも!去年に続いて1年ぶりにAdvent Calendarに登録した記事!
更に!!!!
今回はM1 Macを手に入れたのでM1 Macでの環境構築に挑みます!
※前回の記事はIntel Macでやっています。
さて、では、今回も材料の準備からやっていきますよー!
材料その1の用意:UTMを用意する
Intel MacではVMware Fusion Playerを使っていましたが、M1 macではまだ不安定ってことで、VertualBoxを検討もしましたが、こちらもうまく動かず…
今回はUTMを使って環境を作っていきます。
もちろん無償です!!!
※Apple Storeからのダウンロードには「1220円」かかります(2022/12/14現在)
この「Download」からダウンロードしてください。
dmgイメージがダウンロードできると思うので、インストールしてください。
起動すると以下のような画面がでます!
材料その2の用意:Rocky Linuxを用意する
はい、今回はRocky9.1をダウンロードしてください!
ここで注意!M1 Macでは前回の「x86_64」では動きません!
詳しい内容は書きませんが…とりあえずPCが対応していないということだけ覚えておいてください!
そこで、今回は「ARM64」の「Minimal」をダウンロードです。
材料その1とその2を混ぜ合わせる:
UTM上にRockyLinuxを準備する。
今回のUTMの方が、私的にはVMWareよりわかりやすかった気がします。
とりあえず、下の画像のUTMの隣の「+」を押しましょう。
そうしたら、以下の画面が出力されます。
ここでは「Virtualize」を選択してください!(うさぎさん可愛い!)
すると以下の画面がでます。
ここではもちろん「Linux」を選択ですね!
ここで「Browse…」ボタンを押してください。するとファイルを選択する画面がでます。材料その2でダウンロードしたイメージファイルを選択してください。
私の場合は以下のようなファイル名でした。
その後に「Continue」を選択しましょう。
この後にはHardwareの設定やStorage(HDDの大きさ)の設定などがありますが、この辺は「Continue」でそのまま作っても問題ないと思っています。(あくまでテスト環境ならですが…)
SharedDirectoryに関してはお好みです。Mac本体から仮想環境上にデータを渡したいことがあるのであれば設定しましょう!
さて、最後の画面です。ここのNameに関しては後で見返してどんな環境なのかがわかるようにしておくといいかと思います。
Saveボタンを選択することでRockyのインストール画面に遷移します!
システム再起動です!っと言いたいところですが…今回はここで一旦落としましょう。DISCが入ったままだと、DISCを読み出そうとしてうまく起動してくれません。DISCを抜くことをします。
この「Clear」ボタンを選択して、DISCを抜きましょう。
さて、とうとうRockyの起動です。今回は前回と違うやり方を記載していきますので…混乱するかもしれませんが、ちゃんと画像つき!コマンドコピペで出来るようにしますので…ついてきてください!
下味をつける。:
Redmineを使うために必要なものを用意する。
Super Userに情報を追加
今回はコマンドをUserで実施します。
(前回はsuを使ってrootで作業していましたね。)
そのため、root権限になってから、以下のコマンドを実行してください。
usermod -aG wheel "ユーザ名"
これでsudoが使えるようになっているはずです!
詳しくは下記を参照してください。
SELINUXを無効化
以下のコマンドを入力して編集してください!
sudo vi /etc/sysconfig/selinux
さて、書き換え手順はネットワークの時と同じです。覚えていますか?今回はsudoではないのでそのままでできます。
書き換える内容は…
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of three two values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
「SELINUX=enforcing」を「SELINUX=disabled」に変更しましょう。そして、再起動して「getenforce」コマンドを入力して結果確認しましょう。
そして、次はfirewallの設定!これはサイトにあるように以下の順でコマンド入力したらOKです。
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --reload
sudo firewall-cmd --zone=public --list-services
確認結果が「dhcpv6-client http ssh」になっていたら、いよいよ次で色々インストールしていくことになります!
まずは何も気にせず、以下のコマンドを入力してください!
ツール類のインストール
前の記事で記載した
sudo dnf -y groupinstall "Development Tools"
sudo dnf -y install openssl-devel readline-devel zlib-devel curl-devel libffi-devel
sudo dnf -y install perl
sudo dnf -y --enablerepo=crb install libyaml-devel
sudo dnf -y install postgresql-server postgresql-devel
sudo dnf -y install httpd httpd-devel
sudo dnf -y install epel-release
sudo dnf config-manager --enable crb
sudo dnf -y --enablerepo=crb install ImageMagick ImageMagick-devel
sudo rpm -Uvh https://pkgs.dyn.su/el8/base/x86_64/ipa-pgothic-fonts-003.03-14.el8.noarch.rpm
sudo dnf -y install glibc-locale-source glibc-langpack-en
sudo localedef -i ja_JP -c -f UTF-8 -A /usr/share/locale/locale.alias ja_JP.UTF-8
rbenvのインストール
ここでrbenvの登場です!
cd /usr/local
sudo git clone https://github.com/sstephenson/rbenv.git
sudo mkdir rbenv/plugins && cd rbenv/plugins
sudo git clone https://github.com/sstephenson/ruby-build.git
sudo visudo -f /etc/sudoers.d/rbenv
以下の2行を追加する。
Defaults !secure_path
Defaults env_keep += "PATH RBENV_ROOT"
そして、次は以下のコマンド!
sudo vi /etc/profile.d/rbenv.sh
そして、以下を追加する。
export RBENV_ROOT="/usr/local/rbenv"
export PATH="${RBENV_ROOT}/bin:${PATH}"
eval "$(rbenv init -)"
ここまでできたら一度ログアウトし再度ログインしてください!
sudo chmod -R 777 /usr/local/rbenv
rbenv install 2.7.7 #他のバージョンでも可
rbenv global 2.7.7 #他のバージョンをインストールした場合はそのバージョンを指定する
rbenv rehash
ここまですればrubyがインストールできます!
Redmineのインストール
sudo cd /var/lib
sudo dnf -y install svn
sudo svn co https://svn.redmine.org/redmine/branches/5.0-stable redmine-5.0.3