# サブディレクトリの設定 参考:[Ubuntu18.04 Redmine導入メモ Dokcer編 | ろっひー](https://rohhie.net/ubuntu18-04-redmine-installation-with-docker/#toc20) ##### 前提 Redmine コンテナが動作していること %%http://<ホスト名>:<ポート番号>%% にアクセスすると、Redmineのホーム画面にアクセスできること ##### ファイルのコピー 公式のRedmineイメージからコンテナを作成した場合、デフォルトではvimがインストールされていない。 そのため、コンテナからファイルをローカルにコピーし、編集後にコンテナ内のファイルを上書きする方針で行う。 ``` $ sudo docker cp :/usr/src/redmine/config.ru . $ sudo docker cp :/usr/src/redmine/config/environment.rb . ``` ##### 設定ファイルの編集 下記では、サブディレクトリを「redmine」に指定したい場合を示す。 ``` $ vi config.ru require ::File.expand_path('../config/environment', __FILE__) run Rails.application ↓ require ::File.expand_path('../config/environment', __FILE__) #run Rails.application map ENV['RAILS_RELATIVE_URL_ROOT'] || '/' do run Rails.application end ``` ``` $ vi environment.rb 末尾に追記する ActionController::Base.relative_url_root = RedmineApp::Application.routes.default_scope Redmine::Utils::relative_url_root = RedmineApp::Application.routes.default_scope ENV['RAILS_RELATIVE_URL_ROOT'] = "/redmine" Redmine::Utils::relative_url_root = ENV['RAILS_RELATIVE_URL_ROOT'] ``` ##### 設定の上書き ``` $ sudo docker cp config.ru :/usr/src/redmine $ sudo docker cp environment.rb :/usr/src/redmine/config $ sudo docker-compose restart ``` これで、%%「http://<ホスト名>:<ポート番号>/redmine」%%にアクセスできるようになる。 ##### Apacheでのプロキシ設定 ポート番号の指定をしないで済むようにリバースプロキシを設定する。 Dockerを動作させているホストにおいて、下記のファイルを編集する。 下記の設定は「/redmine」にアクセスすると、「:<ポート番号>/redmine」にルーティングされる設定となる。 ``` $ sudo vi /etc/httpd/conf/httpd.conf 末尾に下記を追記する。 ProxyRequests off ProxyPass /redmine http://localhost:<ポート番号>/redmine/ ProxyPassReverse /redmine http://localhost:<ポート番号>/redmine/ ``` 編集後、httpdサービスを再起動する。 ``` $ sudo systemctl restart httpd ``` 再起動後、%%「http://<ホスト名>/redmine」%%にアクセスできることを確認する。