My Tracking

My Tracking

記憶力の低下が気になるアラフォー男の備忘録

docker上で「 Splunk 」を動かす

引き続き、dockerに関する備忘録。

仕事でも、セキュリティの一環として、 ログの相関分析やビッグデータ活用などをキーワードに、 SIEM(Security Information and Event Management) 装置の類の 検討が行われている。下記の書籍なんかでも

紹介されている「Splunk」の学習環境をdokcerを使用して、 簡単に構築できないかものかと考え試してみた際の備忘録。

目次

参照URL

手順においては、下記のURLの通り。

https://hub.docker.com/r/splunk/splunk/

docker imageの取得

Splunkのdockerイメージを取得する。

[root@docker docker]# docker pull splunk/splunk

Splunkのコンテナ起動

以下の通り、Splunkのコンテナを起動する。

[root@docker docker]# docker run -d -e "SPLUNK_START_ARGS=--accept-license" -e "SPLUNK_USER=root" -p "8000:8000" splunk/splunk
df315d4555e4672602e5bbfae85c752b53944cfdcbaccd5c8a92830b59d18f62
[root@docker docker]#```

Splunkの管理画面からの設定

Splunkの管理画面にアクセスする。

http://dockerホストのIP:8000/

「admin」と初期パスワード「changeme」を入力し、

パスワードを変更し、

OKを押し、

OKを押し、

Skipすると

とりあえず、DashBoardに行き着く

SplunkのDashBoardを日本語化するには、

上記のように、SplunkのDashBoardが英語表記となっている。 大抵、アカウントの設定などで、言語環境を変えらえれるのかと思って、 いろいろ調べたところ、下記の方の記事の通り、 URLそのものを変えてアクセスすればよいとのこと。

azushink.hatenablog.com

あとは、実際にいろいろなデータを食わせながら、 先述の書籍などでお勉強。

docker上でOSSのeラーニング「 Moodle 」を動かす

引き続き、dockerに関する備忘録。

現在所属する会社では、セキュリティ技術に関する人材育成やスキルアップに関する 施策が議論されており、それらの解決施策として、eラーニングシステムが 利用できないかと思慮。システム部門以外の業務部門にはすでに有償の eラーニングシステムを導入しているものの、無償で気軽に使える eラーニングシステムがdockderで簡単に構築できないかものかと考え試してみた際の備忘録。

調べた限り、eラーニングシステムとしては、以下のものがdockerでイメージとして 提供されており、

[iroha Board] https://irohaboard.irohasoft.jp/intro/

[Campus] http://www.campus-elearning.info/

[iroha Board]がUI的に好みだったものの、ここでは、 老舗の「Moodle」をdocker上で動かしてみることに。

目次

参照URL

手順においては、下記のURLの通り。 https://hub.docker.com/r/jauer/moodle/

手順のイメージは

  • MySQLのDB用コンテナを起動する。
  • その後、Moodleのコンテナを起動する。

docker imageの取得

MySQLのdockerイメージを取得する。

[root@docker ~]# docker pull jauer/moodle

MySQLのコンテナ起動

以下の通り、「MYSQL_DATABASE」「MYSQL_USER」 「MYSQL_PASSWORD」を指定したうえで起動する。

[root@docker ~]# docker run -d --name DB -p 3306:3306 -e MYSQL_DATABASE=moodle -e MYSQL_USER=moodle -e MYSQL_PASSWORD=moodle centurylink/mysql

Moodleのコンテナ起動

以下の通り、CMDBuildのコンテナを起動する。

[root@docker ~]# docker run -d -P --name moodle --link DB:DB -e MOODLE_URL=http://192.168.3.72:8080 -p 8080:80 jauer/moodle

Moodleの管理画面からの設定

Moodleの管理画面にアクセスする。

http://dockerホストのIP:8080/

インストールの設定画面が表示されたら、[Continue]

さらに、[Continue]

設定の確認が行われ、しばらくすると確認が終了し、[Continue]

管理者用のユーザー(ここではadmin)を作成し、

[Update profile]を押下

サイト名を適当につけ、(ここではMy Education)

タイムゾーンを[Asia/Tokyo]に設定し、[Save changes]

続いて言語選択するため、[Site administration]-[Language]-[Language pack] を選択し、[日本語]を選択し、[Install selected ~]を押下。

左側に、[日本語]が表示されたことを確認

[Site administration]-[Language]-[Language setting]で [Default language]で[日本語]を選択し、

[Save changes]

ログイン画面に遷移するので、

ログインできることを確認する。

雑感

Moodleについても、残念ながら、使い方がわからないため、 下記の書籍なんかで紹介されているようなので、これから、いろいろ調べていくつもり。

ただし、いちから構築する労力に比べると、 やはり、dockerでは、サクッと構築できてしまうため、 dockerでの構築の容易さを改めて実感した次第。

docker上でOSSのCMDB「 CMDBuild 」を動かす

引き続き、dockerに関する備忘録。

www.slideshare.net

ここでは、上記の記事などで利用されているOSSのCMDB「 CMDBuild 」を 動かしてみる。

目次

参照URL

手順においては、下記のURLの通り。

https://hub.docker.com/r/terminalvelocity/cmdbuild/

GitHub - rsilva4/docker-cmdbuild: CMDBuild Docker image and docker-compose with GIS, BIM and DMS

手順のイメージは

  • PostgressのDB用コンテナを起動する。

  • その後、DB用コンテナを利用し、CMDBuildのコンテナを起動する。

docker imageの取得

postgresのdockerイメージを取得する。

[root@docker ~]# docker pull postgres:9.3.9

postgresのコンテナ起動

以下の通り、「POSTGRES_PASSWORD」にパスワードを指定したうえで起動する。

[root@docker ~]# docker run --name cmdbuild-db -e POSTGRES_PASSWORD=postgres -d -p 5432:5432 postgres:9.3.9

CMDBuildのコンテナ起動

以下の通り、CMDBuildのコンテナを起動する。

[root@docker ~]# docker run --name cmdbuild -p 8080:8080 -d quentinv/cmdbuild:latest

docker imageの確認

下記の通り、docker コンテナの起動状態を確認する

[root@docker ~]# docker ps -a
CONTAINER ID        IMAGE                      COMMAND                  CREATED              STATUS                     PORTS                    NAMES
155012f298d3        quentinv/cmdbuild:latest   "catalina.sh run"        About a minute ago   Up About a minute          0.0.0.0:8080->8080/tcp   cmdbuild
f4902066f4fa        postgres:9.3.9             "/docker-entrypoint.s"   4 minutes ago        Up 4 minutes               0.0.0.0:5432->5432/tcp   cmdbuild-db
[root@docker ~]#

CMDBuildの管理画面からの設定

CMDBuildの管理画面にアクセスする。

http://dockerホストのIP:8080/

言語を[日本語]として、[次へ]

以下の設定を行う。

  • タイプ:Empty
  • 名前:任意の名前(cmdbuild-db)
  • ホスト:cmdbuildをインストールしたホスト
  • ユーザー:postgres
  • パスワード:先述のpostgresコンテナを起動した際の「POSTGRES_PASSWORD」の値

その後、[テスト接続]

postgresとの接続ができたことを確認し、[OK]

任意のユーザー(ここではadmin)を作成する。

[OK]する。

以下のログイン画面に遷移する。

先述のログインユーザー「admin」でログインする。

ログインが完了する。

雑感

CMDBuildについては、残念ながら、まだ使い方がわからないため、 これから、いろいろ調べていくつもり。

Redmineのチケットとの連携もできるようなので、 使いこねせば、システム運用の効率化なんかが行えそう。

docker上でQiita風ツール「 Knowledge 」を動かす

引き続き、dockerに関する備忘録。

下記の書籍の「Docker実践活用術」の章で、 Qiitaクローンの「Lodge」での利用例が紹介されていたが、

Dockerエキスパート養成読本[活用の基礎と実践ノウハウ満載!] (Software Design plus)

Dockerエキスパート養成読本[活用の基礎と実践ノウハウ満載!] (Software Design plus)

ここでは、もうひとつのQiita風のナレッジツール「Knowledge 」を 後述の参照URLを参考に動かしてみる。

目次

参照書籍

いろいろな記事を参考に、dockerをとりあえず使ってみるというこれまでのスタンスだとさすがに、 限界がきたので、下記の書籍がAmazonの技術書フェアで半額になっていたので、購入して、体系的にお勉強中。

Docker実践ガイド impress top gearシリーズ

Docker実践ガイド impress top gearシリーズ

参照URL

手順においては、下記のURLの通り。

https://github.com/support-project/docker-knowledge

docker imageの取得

[root@docker ~]# docker pull koda/docker-knowledge

docker imageの確認

[root@docker ~]# docker images
docker.io/koda/docker-knowledge       latest              b94b7b9e8ded        3 weeks ago         490.3 MB
[root@docker ~]#

データ保存場所の作成

データをホスト側のファイルシステムに永続化するため、下記のディレクトリを作成し、パ^ミッション変更

[root@docker ~]# mkdir -p ~/knowledge
[root@docker ~]# chmod a+w ~/knowledge

knowledgeのコンテナ起動

[root@docker ~]# docker run -d -p 9090:8080 -v ~/knowledge:/root/.knowledge --name knowledge koda/docker-knowledge

knowledgeにアクセス

http://dockerホストのIP:9090/

にアクセスし、knowledgeにアクセスする すると、トップ画面が起動しているので、[GetStarted]を押す

その後、ユーザー登録を行い、下記が投稿画面。

いくつか投稿ができることを 確認してみる。下記が投稿一覧画面。

コードのシンタックスハイライトなんかもばっちり利いてます。

雑感

qiita自体は、会社的にNGとなりそうだが、こちらなら無償で 社内環境でも使えそう。

今風の色味で、ナレッジ共有ツールとしてさらに検証してみたいところ。

docker上でwekanを動かす

こちらで、セットアップした環境で、wekanを動かした際の備忘録。

mytracking.hatenablog.com

後述の参照URLを参考に、wekanを動かしてみる。

目次

参照書籍

いろいろな記事を参考に、dockerをとりあえず使ってみるというこれまでのスタンスだとさすがに、限界がきたので、下記の書籍がAmazonの技術書フェアで半額になっていたので、購入して、体系的にお勉強中。

Docker実践ガイド impress top gearシリーズ

Docker実践ガイド impress top gearシリーズ

参照URL

手順においては、下記のURLの通り。

qiita.com

ここでは、上記の通り、docker-composeを使ってみることに。

データ保存場所の作成

データをホスト側のファイルシステムに永続化するため、下記のディレクトリを作成

[root@docker ~]# mkdir -p ~/docker/wekan/

docker-composeのyml を用意する。

とりあえず、よくわからないが、参照URLの通り、ymlファイルを 環境に合わせて微調整したのが、下記。

[root@docker ~]# cat ~/docker/wekan/docker-compose.yml
wekan:
  image: mquandalle/wekan
  links:
    - wekandb
  environment:
    - MONGO_URL=mongodb://wekandb/wekan
    - ROOT_URL=http://192.168.3.72:8181
  ports:
    - 8181:80 # ポートは好きなポートに
  restart: always

wekandb:
  image: mongo
  volumes:
    - /mnt/sda1/docker/wecan/data:/data/db # tmpfsでない位置を指定
    - /mnt/sda1/docker/wecan/configdb:/data/configdb # tmpfsでない位置を指定
  restart: always

wekanのコンテナ起動

[root@docker ~]# cd ~/docker/wekan
[root@docker wekan]# docker-compose up -d

wekanにアクセス

ROOT_URLに記載したURL(ここではhttp://192.168.3.72:8181)にアクセス

例のように、ログイン画面が起動している。 (個人的に、この瞬間が、一番dockerのメリットを感じるところ。)

あとは、通常通り、プロジェクトを作りながら、

カードを追加したりなんかして、利用する。

雑感

クラウドなんてけしからん!ってな会社のため、 参照URLの記載の通り、「Trello使いたいけど会社が使わせてくれない」状況にある。

あるチームによっては、なんとExcelをかんばんツールに見立てて利用しているなんてところもあるため、 dockerでの手軽さを紹介して、そんなチームを助けてあげたいと思う。

docker上でgitLabを動かす

こちらで、セットアップした環境で、gitLabを動かした際の備忘録。

mytracking.hatenablog.com

下記の書籍の「Docker実践活用術」の章で、 いろいろなアプリケーションのdockerでの利用例が紹介されていたので、

Dockerエキスパート養成読本[活用の基礎と実践ノウハウ満載!] (Software Design plus)

Dockerエキスパート養成読本[活用の基礎と実践ノウハウ満載!] (Software Design plus)

後述の参照URLを参考に、gitLabを動かしてみる。

目次

参照URL

手順においては、下記のURLの通り。 (※説明がシンプルで手っ取り早く、試してみたい人はおすすめのエントリ) yoru9zine.hatenablog.com

Dockerを使って、RedmineとGitLabを構築する

docker image の取得

まずは、gitlabのイメージを取得する。

[root@docker ~]# docker pull sameersbn/gitlab:9.0.3

データ保存場所の作成

データをホスト側のファイルシステムに永続化するため、下記のディレクトリを作成

[root@docker ~]# mkdir -p ~/docker-data/gitlab
[root@docker ~]# mkdir -p ~/docker-data/gitlab-redis
[root@docker ~]# mkdir -p ~/docker-data/gitlab-pgdata

gitLabを起動する。

とりあえず、よくわからないが、参照URLの通り、起動してみる。

まずは、DBから。

[root@docker ~]# docker run -d --name my-gitlab-postgres -v ~/docker-data/gitlab-pgdata:/var/lib/postgresql -e 'DB_NAME=gitlabhq_production' -e 'DB_USER=gitlab' -e 'DB_PASS=password' -e 'DB_EXTENSION=pg_trgm' sameersbn/postgresql:9.6

つぎに、key-valueデータストア?(らしい)を起動。

[root@docker ~]#  docker run -d --name my-gitlab-redis -v ~/docker-data/gitlab-redis:/var/lib/redis sameersbn/redis:latest

最後に、gitLabを起動。

[root@docker ~]# docker run -d --name my-gitlab -v ~/docker-data/gitlab:/home/git/data --link my-gitlab-postgres:postgresql --link my-gitlab-redis:redisio --publish 10022:22 --publish 10080:80 -e 'GITLAB_PORT=10080' -e 'GITLAB_SSH_PORT=10022' -e 'GITLAB_SECRETS_DB_KEY_BASE=long-and-random-alpha-numeric-string' -e 'GITLAB_SECRETS_SECRET_KEY_BASE=long-and-random-alpha-numeric-string' -e 'GITLAB_TIMEZONE=Tokyo' -e 'GITLAB_SECRETS_OTP_KEY_BASE=long-and-random-alpha-numeric-string' sameersbn/gitlab:8.15.3

gitLabの管理画面にアクセス

ここまで、訳も分からず、先述の参照URLのまんまパクリ、 以下にアクセスしてみる。

http://dockerホストのIP:10080

基本的にここまでの作業は、先述の参照URLのパクリのため、自分でも深くはよくわかっておりません。。。

そんなんで、うまくいくはずないだろ!っとタカをくくっていると・・・・



ちゃんと起動しているではないか!



当然、どうやってgitLabを使ってよいかもわかっていないので、 とりあえず、登録。

ログインできたので、プロジェクト作成。

ちゃんと、プロジェクトできてるし!

以上のように、良いか悪いかは別として、よくわかっていない自分でも、 gitHubクローンな環境が手元にできるところは凄いところ。

所属する会社は、クラウドなんてけしからん!ってな会社のため、 イントラ環境で、バージョン管理したいなんてシーンを想定して、 こちらの環境で、いろいろ学習していく予定。

docker上でRedmineを動かす

こちらで、セットアップした環境で、Redmineを動かした際の備忘録。

mytracking.hatenablog.com

下記の書籍で「Docker実践活用術」の章で、 いろいろなアプリケーションのdockerでの利用例が紹介されていたので、

Dockerエキスパート養成読本[活用の基礎と実践ノウハウ満載!] (Software Design plus)

Dockerエキスパート養成読本[活用の基礎と実践ノウハウ満載!] (Software Design plus)

そのノリで、まずは、お約束のRedmineを動かしてみる。

目次

参照URL

手順においては、下記のURLの通り。 (※説明がシンプルで手っ取り早く、試してみたい人はおすすめのエントリ)

yoru9zine.hatenablog.com

Dockerを使って、RedmineとGitLabを構築する

docker image の取得

まずは、Redmineとpostgressのイメージを取得する。

[root@docker ~]# docker pull postgres:9.5.0
[root@docker ~]# docker pull redmine:3.0.7

docker image の確認

取得したdockerイメージを確認する。

[root@docker ~]# docker images
REPOSITORY           TAG                 IMAGE ID            CREATED             SIZE
docker.io/redmine    3.0.7               fd0638cb07ab        9 months ago        588.6 MB
docker.io/postgres   9.5.0               b2b0df88a221        14 months ago       263.8 MB
[root@docker ~]#

データ保存場所の作成

データをホスト側のファイルシステムに永続化するため、下記のディレクトリを作成

[root@docker ~]# mkdir -p ~/docker-data/redmine
[root@docker ~]# mkdir -p ~/docker-data/redmine-pgdata

postgresを起動する。

取得したpostgresのイメージを下記の通り実行し、起動する。

[root@docker ~]# docker run -d --name my-redmine-postgres -v ~/docker-data/redmine-pgdata:/var/lib/postgresql/data/pgdata -e PGDATA=/var/lib/postgresql/data/pgdata -e P \
OSTGRES_PASSWORD=secret -e POSTGRES_USER=redmine postgres:9.5.0

redmineを起動する。

取得したredmineのイメージを下記の通り実行し、起動する。

[root@docker ~]# docker run -d -p 3000:3000 --name my-redmine -v ~/docker-data/redmine:/usr/src/redmine/files --link my-redmine-postgres:postgres redmine:3.0.7

dockerコンテナの確認

下記の通り、dockerコンテナの状態を確認する。

[root@docker ~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
c1664f838e88        redmine:3.0.7       "/docker-entrypoint.s"   13 seconds ago      Up 4 seconds        0.0.0.0:3000->3000/tcp   my-redmine
d05693c5a8ed        postgres:9.5.0      "/docker-entrypoint.s"   34 seconds ago      Up 25 seconds       5432/tcp                 my-redmine-postgres
[root@docker ~]#

redmineの管理画面にアクセス

以下で、アクセスすると、 http://dockerホストのIP:3000

下記の通り、画面表示され、

admin/adminでログインし、

あとは、通常通り利用するredmineを利用していくだけ。

所要時間、正味10分程度で環境がredmine環境出来上がり。う~ん、便利。