FTL: Advanced Edition | #2 - Lanius Variation B Achievement Hunt [PART 1]
目次:
- 前提条件
- MySQLデータベースの作成
- Rubyのインストール
- PassengerとNginxのインストール
- DebianにRedmineをインストールする
- 1. Redmineのダウンロード
- 2. Redmineデータベースの構成
- 3. Ruby依存関係のインストール
- 4.キーの生成とデータベースの移行
- 5.正しい権限を設定します
- Nginxを構成する
- Redmineへのアクセス
- 結論
Redmineは、無料のオープンソースプロジェクト管理および問題追跡アプリケーションです。 クロスプラットフォームおよびクロスデータベースであり、Ruby on Railsフレームワークの上に構築されています。
Redmineには、複数のプロジェクト、Wiki、問題追跡システム、フォーラム、カレンダー、電子メール通知などのサポートが含まれています。
このチュートリアルでは、MySQLをデータベースバックエンドとして使用し、Passenger + NginxをRubyアプリケーションサーバーとして使用して、Debian 9サーバーにRedmineの最新バージョンをインストールおよび設定する方法を示します。
前提条件
このチュートリアルを続行する前に、次の前提条件を満たしていることを確認してください。
- サーバーのパブリックIPを指すドメイン名を持っています。
example.comを使用しexample.com。sudo権限を持つユーザーとしてログインしexample.com。Nginxをインストールします。ドメイン用にSSL証明書をインストールします。
MySQLデータベースの作成
Redmineは、MySQL / MariaDB、Microsoft SQL Server、SQLite 3およびPostgreSQLをサポートしています。 MariaDBをデータベースバックエンドとして使用します。 少なくともMySQL 5.7またはMariaDB 10.3がマシンにインストールされていることを確認してください。
MariaDBまたはMySQLがDebianサーバーにインストールされていない場合は、これらの手順を使用してインストールできます。
次を入力して、MySQLコンソールにログインします。
sudo mysql
次のSQLステートメントを実行して、新しいデータベースを作成します。
CREATE DATABASE redmine CHARACTER SET utf8mb4;
新しいMySQLユーザーアカウントを作成し、データベースへのアクセスを許可します。
GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password';
change-with-strong-password
で
change-with-strong-password
を変更
change-with-strong-password
ことを忘れないでください。
完了したら、次を入力してMariaDBコンソールからログアウトします。
Rubyのインストール
DebianにRubyをインストールする最も簡単な方法は、
apt
パッケージマネージャーを使用することです。
次を入力してRubyをインストールします。
sudo apt install ruby-full
執筆時点では、Debianリポジトリのバージョンは
2.3.3p222
であり、Redmineの最新バージョンでサポートされています。
PassengerとNginxのインストール
Passengerは、Ruby、Node.js、およびPython用の高速で軽量なWebアプリケーションサーバーであり、ApacheおよびNginxと統合できます。 PassengerをNginxモジュールとしてインストールします。
次の手順に進む前に、Nginxがインストールされていることを確認してください。
httpsリポジトリを有効にするために必要なパッケージをインストールします。
sudo apt install dirmngr gnupg apt-transport-https ca-certificates software-properties-common
リポジトリGPGキーをインポートし、Phusionpassengerリポジトリを有効にします。
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'
パッケージリストを更新し、次を使用してPassenger Nginxモジュールをインストールします。
sudo apt update
sudo apt install libnginx-mod-http-passenger
DebianにRedmineをインストールする
Redmineのビルドに必要な依存関係をインストールすることから始めます。
sudo apt install build-essential libmariadbclient-dev imagemagick libmagickwand-dev curl ruby-dev libxslt-dev libxml2-dev zlib1g-dev
この記事の執筆時点で、Redmineの最新の安定バージョンはバージョン4.0.4です。
次の手順に進む前に、Redmineのダウンロードページで新しいバージョンを確認する必要があります。
1. Redmineのダウンロード
次のcurlコマンドを使用してRedmineアーカイブをダウンロードします。
sudo curl -L http://www.redmine.org/releases/redmine-4.0.4.tar.gz -o /tmp/redmine.tar.gz
ダウンロードが完了したら、アーカイブを解凍して
/opt
ディレクトリに移動し
/opt
。
cd /tmp
sudo tar zxf /tmp/redmine.tar.gz
sudo mv /tmp/redmine-4.0.4 /opt/redmine
2. Redmineデータベースの構成
Redmineのサンプル構成ファイルをコピーします。
sudo cp /opt/redmine/config/database.yml.example /opt/redmine/config/database.yml
テキストエディターでファイルを開きます。
sudo nano /opt/redmine/config/database.yml
production
セクションを検索し、以前に作成したMySQLデータベースとユーザー情報を入力します。
production: adapter: mysql2 database: redmine host: localhost username: redmine password: "change-with-strong-password" encoding: utf8
完了したら、ファイルを保存してエディターを終了します。
3. Ruby依存関係のインストール
redmineディレクトリに移動し、バンドラーとその他のRuby依存関係をインストールします。
cd /opt/redmine/
sudo gem install bundler --no-rdoc --no-ri
sudo bundle install --without development test postgresql sqlite
4.キーの生成とデータベースの移行
次のコマンドを実行してキーを生成し、データベースを移行します。
cd /opt/redmine/
sudo bundle exec rake generate_secret_token
sudo RAILS_ENV=production bundle exec rake db:migrate
5.正しい権限を設定します
Nginxは
www-data
ユーザーおよびグループとして実行されます。 次のchownコマンドを発行して、正しいアクセス許可を設定します。
sudo chown -R www-data: /opt/redmine/
Nginxを構成する
このチュートリアルの前提条件を確認していない場合は、すでにSSL証明書付きのNginxがシステムにインストールされているはずです。
テキストエディターを開き、次のNginxサーバーブロックファイルを作成します。
sudo nano /etc/nginx/sites-available/example.com
/etc/nginx/sites-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; }
example.comをRedmineドメインに置き換え、SSL証明書ファイルへの正しいパスを設定することを忘れないでください。 すべてのHTTP要求はHTTPSにリダイレクトされます。 この構成で使用されるスニペットは、このガイドで作成されます。
sites-enabled
ディレクトリへのシンボリックリンクを作成して、サーバーブロックを有効にします。
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
Nginxサービスを再起動する前に、構文エラーがないことを確認するテストを行います。
sudo nginx -t
エラーがない場合、出力は次のようになります。
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
最後に、次のように入力してNginxサービスを再起動します。
Redmineへのアクセス
ブラウザを開いてドメインを入力し、インストールが成功すると仮定すると、次のような画面が表示されます。


パスワードを変更すると、ユーザーアカウントページにリダイレクトされます。
結論
DebianシステムにRedmineが正常にインストールされました。 ここで、Redmineのドキュメントを確認し、Redmineの設定および使用方法の詳細を学習する必要があります。
debian redmine ruby mysql nginxLinuxディストリビューションの更新:Ubuntuのスラッシュサポート、Debian 7.0の近くのダウンロード
CanonicalのLTS(Long Term Support) CanonicalはUbuntu LinuxのLong Term Support(LTS)リリースのサポート期間を3年から5年に延長したことはずいぶん前ではありませんでしたが、先週、CanonicalはUbuntu Linuxの逆方向の動きを見せました
Debian 9でユーザーを追加および削除する方法
ユーザーを追加および削除する方法を知ることは、Linuxユーザーが知っておくべき基本的なスキルの1つです。 このチュートリアルでは、Debian 9でユーザーを追加および削除する方法を示します。
Debian 9でスワップスペースを追加する方法
スワップは、物理RAMメモリの容量がいっぱいになったときに使用されるディスク上のスペースです。 このチュートリアルでは、Debian 9システムにスワップファイルを追加するために必要な手順の概要を説明します。







