気軽に立てようウェブサービス

この記事は、 rogy Advent Calendar 2017 の21日目[0]の記事である。

前日の記事は『well-definedのはなし – 東京工業大学 ロボット技術研究会公式ブログ』、
翌日の記事は『ヒーローに……なり台湾! – 東京工業大学 ロボット技術研究会公式ブログ』である。

ネタがなくなったので私が立てている自分用サービス/サーバとかの紹介でもします。

web 開発とかの話はしないし、それどころか技術的な話でもないです。 タイトルから勘違いしたならドンマイということで。

概要

ロ技研ではもともと web サイトや GitLab サーバを持っていたが、最近さらに discourse や WordPress や wiki なども導入された。 めでたいことだ。 ちょうど AdC のネタもなかったので、この機に私の自前運用サービスの紹介と、それを私がどう使っているのか的な話を書きたい。

サービス立てる方法

  1. ドメインを取得する
  2. サーバを調達する
    • VPS でも自宅機でも良いが、個人的には VPS の方がおすすめ
  3. DNS とか ssh 鍵の共有とか鯖の設定をする
  4. サービスを立てる
    • docker を使うなら、 docker-compose.yaml を書いたり Dockerfile を書いたりスタートアップスクリプトを書いたり
    • docker を使わないなら、素直にシステムにインストール
    • あと自動起動とか証明書自動更新とかバックアップとかも systemd service や timer を用意する

簡単でしょ?

私が立てている(主に自分用)サービス

GitLab

Git リポジトリホスティングサービス。 web インターフェースもある、まあ GitHub みたいなやつの OSS 版。

「プライベートリポジトリを置いとけるリモートの鯖が欲しいけど、 GitHub に金払うのもなぁ……よし、立てるか!」ということで立てた。 卒論とか minecraft のセーブデータとか機密情報とかいろいろ突っ込んでおけるので便利。

そのうち CI を用意して連携させてブログの自動デプロイとかできると楽しそうだと思っているのだが、 GitLab CI を使うか Jenkins を使うかその他にするか、まだ考えていない。

Redmine

チケット管理サービス (Issue Tracking System, ITS) 。 タスク管理とかに使える。 GitHub の issue を高機能にしてそれだけ取り出してきたみたいなやつと思っておけばだいたい合ってる。

「やりたいエヨゲ多くなってきたな……よし管理するか!」ということで立てた。 エヨゲの体験版とかエヨゲとか minecraft の目標や進捗状況、欲しいものリストの管理等で使っている。

MediaWiki

言わずと知れた wiki 。 Wikipedia とかは MediaWiki で構築されている。

「エヨゲで出てきた雑学をまとめておきたいな……よし wiki 立てるか!」ということで立てた。 エヨゲの雑学とか解説をメモしたり、何かの機会に見た謎のアレをメモしたり、おもしろかったドメインをメモしたり、聞いたことのある変拍子の曲をメモしたりなどしている。 情報を綺麗にまとめるというより、他人に見せるかもしれないメモを自分だけで書く用途で使っている。

wiki のシステムは一度自分で作ってみたいと思っているので、そのうち引っ越すかもしれず、そのため mediawiki の方は精力的に使ったりはしていない。 でもあると便利。

web サーバ

静的な web サイトを公開するためのもの。

「ブログ書くか……でも markdown とか嫌いだし、 asciidoc とか独自 XML 使いたいなぁ……変換は手元でやってファイルだけリモートに置いとくか!」ということで立てた。 そういった理由がある[1]ので、 WordPress とかその他サービスは使っていない。

GNU Social

Mastodon と同じようなやつだが、 Mastodon より大昔から存在する SNS 。 Mastodon と互換性があり、互いにフォローしあうこともできる。

「プロプライエタリなサービスにネットでの人間関係を握られるの嫌だなぁ…… OSS でどうにかするか!」ということで立てた。 Mastodon に引っ越しするまでメインで使っていた。 実は twitter への同時投稿プラグインもあるので、それも使っていた。

今は Mastodon をメインで使っている。

Mastodon や GNU Social についての詳細は昔ブログを書いたのでそっち読んで: 『gnusocial や mastodon の哲学 - 何とは言わない天然水飲みたさ』、 『Mastodon が普及しつつあるけど、元 GNU Social 勢として思うこともありまして - 何とは言わない天然水飲みたさ』。

Mastodon

GNU Social と互換性のある後発の OSS 。 よりモダンなプロトコルに対応している。

もう私は twitter をメインで使っていないので、 twitter で私をホョヨーしている皆様は是非 Mastodon へいらっしゃいませ。 どこ行けばいいかわからないという場合は mstdn.jpPawoofriends.nico あたりの大手にでも行ってみればいいと思います[2]

Mastodon についての詳細は昔ブログを書いたのでそっち読んで: 『gnusocial や mastodon の哲学 - 何とは言わない天然水飲みたさ』、 『Mastodon が普及しつつあるけど、元 GNU Social 勢として思うこともありまして - 何とは言わない天然水飲みたさ』。

ownCloud

ファイルホスティングサービス。 自家用 Dropbox みたいなやつ。

「プライベートな情報をわざわざ抜き出しやすい形でプロプライエタリなサービスに見せてあげるの嫌だし、検閲されるのもなぁ……自分で立てるか!」ということで立てた。 雑多なファイルを置いている。 ファイルの公開や共有にも使える。

これから欲しいもの

メタなもの

いいかげんサーバとかサービスが増えてきたので、ここらでオーケストレーションと死活監視とログ収集に手を出したいなと思う今日このごろ。

メールサーバ

メールは歴史的な事情もあり、セキュリティ関係の設定をシビアにやらないと大変なことになってしまうのだが、 Gmail 依存をやめたいのと、自分の開発や鯖オペで使いたいので、暇になったら勉強しつつ立てたい。

メールはチャット的に使うこともできるし、用途ごとに UI さえ調整すれば何にでも使えるので、いろいろ遊べるはず。

開発

自作サービスとかを載せて動かしたさがある [3]

あとは開発に使えるような CI (Continuous Integration) サービスが欲しい。 GitLab に TeX ファイルを push したら PDF が自動で出てきたり、 XML ソースを push したらブログが勝手に更新されたりとか、そんな感じの自動化をしたい。

まとめ

  • いろいろサービス立てて使ってます
  • そんなに難しくないよ
  • 脱プロプライエタリしましょう
  • まだまだいろいろ立てたい