2019年7月23日火曜日

Redmineインストール

いまさらだけど、やっぱりタスク管理をやってみたくて
超メジャーにすることにした。
https://propagandes.info/redmine-install/
動作環境
http://guide.redmine.jp/RedmineInstall/#Requirements
あれ、MariaDBだめなの??
じゃあ、新たにPostgreSQLを入れるか、Dcoker使って環境作るか・・・。
まずはお試しなので、Docker使ってみようかな。
https://qiita.com/bezeklik/items/b9d75ee74e0ae4c6d42c
悩む・・。
https://www.untrustedconnection.com/2018/01/redmine-passenger-and-nginx-on-ubuntu.html
悩んだ時は巨人の肩に乗る!
https://github.com/sameersbn/docker-redmine

MariaDBのデータディレクトリ移動

よくよく見たら、データがraid環境下に保管されていなかった。あちゃー
cat /etc/mysql/mariadb.conf.d/50-server.cnf
-------------------------------------------
(略)
#
# * Basic Settings
#
user  = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket  = /var/run/mysqld/mysqld.sock
port  = 3306
basedir  = /usr
datadir  = /var/lib/mysql
tmpdir  = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking
(略)
のdatadirを"/mnt/4Traid1/dbdata"に変更したい
systemctl stop mariadb.service
50-server.cnfのdatadb書き換え
データ移動
systemctl start mariadb.service
これで少し安心。

いざRedmine

http://www.makcraft.com/blog/meditation/2019/01/19/running-redmine-on-docker-containers/

Dockerの準備

https://docs.docker.com/install/linux/docker-ce/ubuntu/
基本的にはこの手順。だけど、Ubuntuじゃないので、注意。
$ lsb_release -cs
tara
「tara」は「Ubuntu 18.04 LTS」をベースにしているらしい。
で、これのコードネームは「bionic」らしい。
https://ja.wikipedia.org/wiki/Linux_Mint
https://www.ubuntulinux.jp/News/ubuntu1804
なので、「$(lsb_release -cs)」の部分を書き換える。

まずはクイックスタートを試してみる

https://github.com/sameersbn/docker-redmine#installation
docker pull sameersbn/redmine:latest
docker run --name=postgresql-redmine -d --env='DB_NAME=redmine_production'   --env='DB_USER=redmine' --env='DB_PASS=password' --volume=/srv/docker/redmine/postgresql:/var/lib/postgresql sameersbn/postgresql:9.6-4
docker run --name=redmine -d --link=postgresql-redmine:postgresql --publish=5080:80 --publish=50443:443 --env='REDMINE_PORT=5080' --volume=/srv/docker/redmine/redmine:/home/redmine/data sameersbn/redmine:4.0.4
https://サーバー:5080にアクセスすると


おぉ!

外部SQLサーバーを使ってみる

せっかく母艦のほうにMariaDBがあるのでPostgreからこっちに切り替えてみる
Redmineのコンテナからアクセスできるようにする。振られたIPはなんだろうか?
https://qiita.com/miyatahirotaka/items/a44e2ae0bac53a4a5feb
https://qiita.com/suin/items/50033dc60bfba8553395
http://docs.docker.jp/engine/userguide/networking/dockernetworks.html
docker exec -i -t redmine bash
root@57a:/home/redmine/redmine# hostname -i
172.17.0.3

MariaDBの設定変更

外部からアクセス出来るようにする。
https://qiita.com/tocomi/items/0c009d7299584df49378
vi /etc/mysql/mariadb.conf.d/50-server.cnf
-----------
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
# bind-address            = 127.0.0.1
-----------
service mariadb restart

MariaDBにDBとユーザー作成

CREATE USER 'redmine'@'172.17.%' IDENTIFIED BY 'password';
CREATE DATABASE IF NOT EXISTS `redmine_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`;
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'172.17.%'
試しに、コンテナの中からアクセス出来るか確認してみる
docker exec -i -t redmine bash
root@57a:/home/redmine/redmine# mysql -u redmine -p --host==サーバーIP

起動中のRedmineとPostgreを停止する

プロセスの確認と停止
docker ps -a
CONTAINER ID        IMAGE                        COMMAND                  CREATED             STATUS                     PORTS               NAMES
57aee49d39b6        sameersbn/redmine:4.0.4      "/sbin/entrypoint.sh…"   5 days ago          Exited (0) 5 seconds ago                       redmine
78b9389d7745        sameersbn/postgresql:9.6-4   "/sbin/entrypoint.sh"    5 days ago          Up 5 days                  5432/tcp            postgresql-redmine

docker stop redmine
docker stop postgresql-redmine
コンテナの削除
docker rm redmine
docker rm postgresql-redmine
http://www.risewill.co.jp/blog/archives/6793

外部SQLサーバーを指定して起動してみる

docker run --name=redmine -it --rm \
--env='DB_ADAPTER=mysql2' \
--env='DB_HOST=192.168.1.25' --env='DB_NAME=redmine_production' \
--env='DB_USER=redmine' --env='DB_PASS=password' \
--env='REDMINE_HTTPS=false' \
--publish=5080:80 --publish=50443:443 --env='REDMINE_PORT=5080' \
--volume=/srv/docker/redmine/redmine:/home/redmine/data \
sameersbn/redmine::4.0.4
さぁ



わぉOrz
ログを確認してみる。
docker exec -i -t redmine bash
tail -f /var/log/redmine/redmine/production.log
----
Started GET "/" for 127.0.0.1 at 2019-07-09 22:40:27 +0000
Processing by WelcomeController#index as HTML
Completed 500 Internal Server Error in 8ms (ActiveRecord: 3.8ms)
  
ActiveRecord::StatementInvalid (Mysql2::Error: Table 'redmine.settings' doesn't exist: SHOW FULL FIELDS FROM `settings`):
  
app/models/setting.rb:235:in `check_cache'
app/controllers/application_controller.rb:90:in `user_setup'
----
DBを見てみると、空っぽだった。なぜ?
http://guide.redmine.jp/RedmineInstall/#step-6-
https://qiita.com/bezeklik/items/b9d75ee74e0ae4c6d42c
初期設定が必要なのか??
docker exec redmine bundle exec rake db:migrate RAILS_ENV=production
docker exec redmine bundle exec rake redmine:load_default_data RAILS_ENV=production REDMINE_LANG=ja
これで再度アクセスしてみると



やったー
admin/adminで入ろう
よしよし、良さそう!

スマホアプリを使ってみる

宅内では使えそうなので、外出先での使用を考えてスマホアプリを導入してみる。
http://redminepm.com/ja
あまり、外部からアクセスできるポートを何個も開けるのは気分的に嫌だったので、
さらに当面は自分しか使わないので、sshポートフォアードを使用した。
使う時だけlocalhost:5080とサーバーの5080をつなげる。



タスクを眺めるにはアプリが見やすいと思う



チケットを割り当てたり、ガントチャート見たりはブラウザと使い分けると幸せになれそう。
しばらくはこれでやってみようと思う。

2 件のコメント:

  1. TryZenTao は、アジャイル チーム向けのオープン ソースの ALM ツールです。 また、クラウドサービスの無料トライアルもあります。

    返信削除
    返信
    1. [詳細はこちら](https://www.zentao.pm/book/zentaomanual/free-open-source-project-management-software-zentao-8.html)

      削除