経緯
ざっくり言うと、ChatOpsしたい!けどネットワークに制約がある!なのでDockerで必要なものを用意してイメージを持ち込もう!という経緯です。
入れるもの
Restyaboard
![](https://qiita-user-contents.imgix.net/http%3A%2F%2Frestya.com%2Fimages%2Fview-banner.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=740c44cd4b9bb795f90e80da595b4d47)
Trelloのクローンです。
プロジェクト管理でRedmineを使ってましたが、カンバンを使いたく、かといってRedmineのカンバンがあるけどもRedmineは個人的に今後の展望にwktkしなかったので流行ってるTrello!・・・を使えないからそのクローンのRestyaboardを使ってみようという経緯です。
Rocket Chat
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fraw.githubusercontent.com%2FSing-Li%2Fbbug%2Fmaster%2Fimages%2Fdronechatops.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=61e6b15db68e1b8bc1857791ea2b91bf)
Slackのクローンです。
最初はLet's Chatを使ってました。
すごくシンプルで、かつオシャンティなので浸透も早かったです。ただ問題点が、アバター画像がgravatarで外部接続が必要で、こちらの記事を参考に手を加える必要がありました。アップデートする度に手を加えるのも辛いし、もっといいのないかと探してたら見つけたのがRocket Chatです。
高機能なのですが、浸透するのに逆に足かせになりそうだなと思いつつ、WebRTCでのビデオ通話ができるという点が大きくメリットで切り替えるようにしました。
Hubot
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fhubot.github.com%2Fassets%2Fimages%2Fscreenshots%2Fdangerroom-full.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=49c70302fa7a1adc288dea91f2739eae)
Gitlabなどと連携させるためにBOTとしてHubotもいれます。
Jenkins2
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fjenkins.io%2Fimages%2Fpipeline-stage-view.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=d9de49a3b8028039513b845b660d5ed1)
Jenkinsがメジャーバージョンアップしました!(パチパチー!)
よく使われるプラグインがデフォルトで同梱されるようになったらしいので、せっかくだし2でいこう!という経緯です。
その他
コード解析用にSonarQubeと、ナレッジベース用にLodgeかなにか・・・を入れようと思ってます。
Docker Compose
各OSSがオフィシャルで公開しているものを組み合わせて1つのComposeファイルにします。
※docker-compose.yml
ファイルはブログに記載しておきます。
Docker Composeを利用するうえで、よく利用するコマンドをメモとして残しておきます。
// Composeで起動中のイメージを確認
# docker-compose ps
// Dockerfileをビルドします
# docker-compose build
// デーモン状態で起動します
# docker-compose up -d