要件
#オペレーティングシステム:
Ruby環境の任意のマシンをインストールできます。
!!CentOS7.4サーバーを使用しています。
#Rubyインタープリター:
Ruby環境をインストールします。ドキュメント「Rubyインタプリタ」の要件に従ってインストールします。
!!RVMを使用してRuby2.6環境をインストールします。
#サポートされているデータベースバックエンド:
MySQLデータベースを選択します。
!!MySQL5.6バージョンをYumソースから直接インストールします。
#オプションのコンポーネント
オプションのコンポーネントは、いくつかの追加パッケージをインストールする必要があります。たとえば、SCM、ImageMagickなど。
Redmineバージョン
!!Redmine4.0.4バージョンを選択するためにRuby2.6環境がインストールされています。
ダウンロード:wget https://www.redmine.org/releases/redmine-4.0.4.tar.gz
インストール手順
#0注
(1)LinuxのACLとSELINUXは、インストールプロセス中にいくつかの問題を引き起こします。
(2)手動でインストールしたくない場合は、サードパーティのパッケージ「サードパーティのRedmineバンドル」の使用を検討できます。
#1ダウンロードして解凍(スキップ)
Redmineを/ usr / local / redmine /に解凍します。
#2データベースユーザーを作成する
CREATE DATABASE redmine CHARACTER SET utf8mb4; CREATE USER'redmine '@' localhost 'IDENTIFIED BY'my_password'; redmine。*のすべての特権を 'redmine' @ 'localhost'に付与します。
#3データベース構成を変更する
構成ファイルをコピーします:cp config / database.yml.example config / database.yml
構成ファイルを変更します:vim config / database.yml
#4依存インストール
#!/ bin / sh #Redmineはbundleを使用して依存関係を管理します gem install bundler #関連する依存関係をインストールします(ただし、最初にソースを変更する必要があります) bundle config mirror.https://rubygems.org https://gems.ruby-china .com bundle install --without "development" "test"#ソースを変更しないとスタックします。 # "bundle install --without" development "" test ""の実行中にエラーが発生しました。 #プロンプトに従って対処します。私のシナリオでは、次の依存関係を インストールする必要があります。yuminstall -y ImageMagick ImageMagick-devel.x86_64 gem install rmagick -v '2.16.0' #またはスキップ:bundle install --without development test rmagick #データベースが変更された場合アダプター(ドライバー)、センターで実行する必要があります:バンドルインストール-開発テストなし
#5セッションの改ざんを防ぐためにランダムキーを生成する
次のコマンドを実行します:bundle exec rake generate_secret_token
#6データベース構造と関連データを作成する
次のコマンドを実行します:RAILS_ENV = production bundle exec rake db:migrate
#7デフォルトの構成データをインポートする
执行コマンド:RAILS_ENV = production bundle exec rake redmine:load_default_data
#8ファイルシステムのアクセス許可を変更する
Redmineを実行しているユーザーは、次のディレクトリへの書き込みアクセス権を持っている必要があります。
ファイル(添付ファイルの保存) ログ(アプリケーションログファイルproduction.log) tmpおよびtmp / pdf(存在しない場合はこれらを作成し、特にPDFドキュメントの生成に使用) public / plugin_assets(プラグインのアセット)
次のコマンドを実行します。
#!/ bin / sh mkdir -p tmp tmp / pdf public / plugin_assets chown -R redmine:redmine files log tmp public / plugin_assets chmod -R 755 files log tmp public / plugin_assets #そして、これらのディレクトリ内のファイルに実行権限 #たとえば、権限をキャンセルします。ファイルの検索log tmp public / plugin_assets -type f -exec chmod -x {} +
#9テストインストール
コマンドの実行:bundle exec rails server webrick -e production
ブラウザアクセス:http:// your-ip-address:3000
!!ドキュメントに記載されているように、Webrickは実稼働環境には適していません。Passenger(別名mod_rails)、FCGI、またはRackサーバー(Unicorn、Thin、Puma、hellip;)などの使用を検討する必要があります。
#10システムにログインする
デフォルトのユーザー名とパスワードは次のとおりです。admin/ admin
構成
構成はここでは展開されません。公式の「構成」ドキュメントを参照できます。
メールの設定、SCMプログラムの設定、添付ファイルの保存の設定。
ログ構成(省略)
データのバックアップ(省略)
エラーリスト
#エラー:指定されたキーが長すぎました。キーの最大長は767バイトです
「#1071-指定されたキーが長すぎました。キーの最大長は767バイトです」
「13.1.15CREATEINDEX構文」
問題の説明:
データベースはMySQL5.6バージョンです。このエラーは、データベースとテーブルの作成時に発生しました(RAILS_ENV = production bundle exec rake db:migrate)。
問題の原因:
MySQL5.6バージョンについてここで説明します。
文字列型の列の場合、インデックスは列値の先頭のみを使用でき、col_name(length)構文を使用してプレフィックス長を指定します。文字数に応じて計算される非バイナリ文字列タイプ。バイト数に従って計算されるバイナリ文字列型。
さらに、サポートされているプレフィックス長は、ストレージエンジンにも関連しています。InnoDBテーブルの場合は767バイトに達する可能性があり、innodb_large_prefixオプションを使用すると3072バイトに達する可能性があります。
innodb_large_prefixオプションを有効にせず、utf8mb4エンコーディングを使用したため、VARCHARタイプの最大インデックス長は767/4 = 191文字です。フィールドのタイプはVARCHAR(255)であり、インデックスの作成時にcol_name(length)属性は指定されません(デフォルト(未指定)は、フィールド全体の長さ:255を使用するインデックスである必要があります)
解決策:
データベースのエンコーディングを変更します。ALTERDATABASEredmine CHARACTER SET utf8 COLLATE utf8_general_ci;