SlideShare a Scribd company logo

Mastodonインスタンスをセットアップできるスタートアップスクリプトについて

さくらの夕べ マストドンテクノロジーナイト 資料(2017年6月28日)

1 of 34
1
DATE COMPANY SERVICE VERSION
|No.2
Mastodon
インスタンス
に必要なもの
|No.4
スクリプトでさ
くらのVPSに⽴
ててみる
|No.1
スタートアップ
スクリプトとは
2017/6/28 さくらインターネット株式会社 根本 昌季さくらのクラウド
|No.3
スクリプ
トの処理と
補⾜Mastodonインスタンスを
セットアップできるスタート
アップスクリプトについて
22
• ⽒名
根本 昌季
• 所属/業務内容
技術本部 ミドルウェアグループ/クラウドチーム(運⽤メンバー)
• 前職までの経歴
DNS/メール/監視サーバの構築/運⽤を主に担当
• 趣味
スクーバダイビング/ジョギング
⾃⼰紹介
33
✓ さくらのクラウドでサーバの起動時に実⾏するShellスクリプト
✓ コントロールパネルに⼊⼒した値を変数として使⽤することができる
✓ スクリプトの⻑さは 10000⽂字まで
✓ 詳しくはクラウドニュースを参照
スタートアップスクリプトとは
スタートアップスクリプトとは
44
スタートアップスクリプトとは
55
スタートアップスクリプトとは
スタートアップスクリプトの
ソースコード
66
スタートアップスクリプトとは
サーバ作成でMastodonの
スタートアップスクリプトを
選択

Recommended

さくらのクラウドでVyOS使ってみた
さくらのクラウドでVyOS使ってみたさくらのクラウドでVyOS使ってみた
さくらのクラウドでVyOS使ってみたSAKURA Internet Inc.
 
Lagopus + DockerのDPDK接続
Lagopus + DockerのDPDK接続Lagopus + DockerのDPDK接続
Lagopus + DockerのDPDK接続Tomoya Hibi
 
「さくらのクラウド」におけるVyattaの活用事例
「さくらのクラウド」におけるVyattaの活用事例「さくらのクラウド」におけるVyattaの活用事例
「さくらのクラウド」におけるVyattaの活用事例SAKURA Internet Inc.
 
「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)
「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)
「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)さくらインターネット株式会社
 
コンテナネットワーキング(CNI)最前線
コンテナネットワーキング(CNI)最前線コンテナネットワーキング(CNI)最前線
コンテナネットワーキング(CNI)最前線Motonori Shindo
 
Dockerと外部ルータを連携させる仕組みを作ってみた
Dockerと外部ルータを連携させる仕組みを作ってみたDockerと外部ルータを連携させる仕組みを作ってみた
Dockerと外部ルータを連携させる仕組みを作ってみたnpsg
 

More Related Content

What's hot

コンテナ型仮想化とはなんだったのか
コンテナ型仮想化とはなんだったのかコンテナ型仮想化とはなんだったのか
コンテナ型仮想化とはなんだったのかえむ ばーど
 
VPP事始め
VPP事始めVPP事始め
VPP事始めnpsg
 
さくらのクラウドインフラの紹介
さくらのクラウドインフラの紹介さくらのクラウドインフラの紹介
さくらのクラウドインフラの紹介SAKURA Internet Inc.
 
Apache cloudstack4.0インストール
Apache cloudstack4.0インストールApache cloudstack4.0インストール
Apache cloudstack4.0インストールYasuhiro Arai
 
コンテナを止めるな! PacemakerによるコンテナHAクラスタリングとKubernetesとの違いとは
コンテナを止めるな!  PacemakerによるコンテナHAクラスタリングとKubernetesとの違いとはコンテナを止めるな!  PacemakerによるコンテナHAクラスタリングとKubernetesとの違いとは
コンテナを止めるな! PacemakerによるコンテナHAクラスタリングとKubernetesとの違いとはksk_ha
 
Havana版 RDO-QuickStart-4 (140421-Havana-RDO-QuickStart-4.pdf)
Havana版 RDO-QuickStart-4 (140421-Havana-RDO-QuickStart-4.pdf) Havana版 RDO-QuickStart-4 (140421-Havana-RDO-QuickStart-4.pdf)
Havana版 RDO-QuickStart-4 (140421-Havana-RDO-QuickStart-4.pdf) VirtualTech Japan Inc.
 
Havana版 RDO-QuickStart-3 (140421-Havana-RDO-QuickStart-3.pdf)
Havana版 RDO-QuickStart-3 (140421-Havana-RDO-QuickStart-3.pdf) Havana版 RDO-QuickStart-3 (140421-Havana-RDO-QuickStart-3.pdf)
Havana版 RDO-QuickStart-3 (140421-Havana-RDO-QuickStart-3.pdf) VirtualTech Japan Inc.
 
Docker Swarm モード にゅうもん
Docker Swarm モード にゅうもんDocker Swarm モード にゅうもん
Docker Swarm モード にゅうもんMasahito Zembutsu
 
すごく分かるwarden
すごく分かるwardenすごく分かるwarden
すごく分かるwardeni_yudai
 
Ethernetの受信処理
Ethernetの受信処理Ethernetの受信処理
Ethernetの受信処理Takuya ASADA
 
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪Kunihiro TANAKA
 
Linux packet-forwarding
Linux packet-forwardingLinux packet-forwarding
Linux packet-forwardingMasakazu Asama
 
ラズパイ2で動く Docker PaaS
ラズパイ2で動く Docker PaaSラズパイ2で動く Docker PaaS
ラズパイ2で動く Docker PaaSnpsg
 
Dockerのディスクについて ~ファイルシステム・マウント方法など~
Dockerのディスクについて ~ファイルシステム・マウント方法など~Dockerのディスクについて ~ファイルシステム・マウント方法など~
Dockerのディスクについて ~ファイルシステム・マウント方法など~HommasSlide
 
OpenStackクラウド基盤構築ハンズオンセミナー 第2日:講義No1
OpenStackクラウド基盤構築ハンズオンセミナー 第2日:講義No1OpenStackクラウド基盤構築ハンズオンセミナー 第2日:講義No1
OpenStackクラウド基盤構築ハンズオンセミナー 第2日:講義No1Etsuji Nakai
 

What's hot (20)

Vyatta 改造入門
Vyatta 改造入門Vyatta 改造入門
Vyatta 改造入門
 
コンテナ型仮想化とはなんだったのか
コンテナ型仮想化とはなんだったのかコンテナ型仮想化とはなんだったのか
コンテナ型仮想化とはなんだったのか
 
VPP事始め
VPP事始めVPP事始め
VPP事始め
 
さくらのクラウドインフラの紹介
さくらのクラウドインフラの紹介さくらのクラウドインフラの紹介
さくらのクラウドインフラの紹介
 
Apache cloudstack4.0インストール
Apache cloudstack4.0インストールApache cloudstack4.0インストール
Apache cloudstack4.0インストール
 
コンテナを止めるな! PacemakerによるコンテナHAクラスタリングとKubernetesとの違いとは
コンテナを止めるな!  PacemakerによるコンテナHAクラスタリングとKubernetesとの違いとはコンテナを止めるな!  PacemakerによるコンテナHAクラスタリングとKubernetesとの違いとは
コンテナを止めるな! PacemakerによるコンテナHAクラスタリングとKubernetesとの違いとは
 
Havana版 RDO-QuickStart-4 (140421-Havana-RDO-QuickStart-4.pdf)
Havana版 RDO-QuickStart-4 (140421-Havana-RDO-QuickStart-4.pdf) Havana版 RDO-QuickStart-4 (140421-Havana-RDO-QuickStart-4.pdf)
Havana版 RDO-QuickStart-4 (140421-Havana-RDO-QuickStart-4.pdf)
 
Havana版 RDO-QuickStart-3 (140421-Havana-RDO-QuickStart-3.pdf)
Havana版 RDO-QuickStart-3 (140421-Havana-RDO-QuickStart-3.pdf) Havana版 RDO-QuickStart-3 (140421-Havana-RDO-QuickStart-3.pdf)
Havana版 RDO-QuickStart-3 (140421-Havana-RDO-QuickStart-3.pdf)
 
Docker Swarm モード にゅうもん
Docker Swarm モード にゅうもんDocker Swarm モード にゅうもん
Docker Swarm モード にゅうもん
 
Lagopus 0.2.2
Lagopus 0.2.2Lagopus 0.2.2
Lagopus 0.2.2
 
VyOSでMPLS
VyOSでMPLSVyOSでMPLS
VyOSでMPLS
 
すごく分かるwarden
すごく分かるwardenすごく分かるwarden
すごく分かるwarden
 
Ethernetの受信処理
Ethernetの受信処理Ethernetの受信処理
Ethernetの受信処理
 
Lagopus 0.2
Lagopus 0.2Lagopus 0.2
Lagopus 0.2
 
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
 
Linux packet-forwarding
Linux packet-forwardingLinux packet-forwarding
Linux packet-forwarding
 
ラズパイ2で動く Docker PaaS
ラズパイ2で動く Docker PaaSラズパイ2で動く Docker PaaS
ラズパイ2で動く Docker PaaS
 
Dockerのディスクについて ~ファイルシステム・マウント方法など~
Dockerのディスクについて ~ファイルシステム・マウント方法など~Dockerのディスクについて ~ファイルシステム・マウント方法など~
Dockerのディスクについて ~ファイルシステム・マウント方法など~
 
DPDKを拡張してみた話し
DPDKを拡張してみた話しDPDKを拡張してみた話し
DPDKを拡張してみた話し
 
OpenStackクラウド基盤構築ハンズオンセミナー 第2日:講義No1
OpenStackクラウド基盤構築ハンズオンセミナー 第2日:講義No1OpenStackクラウド基盤構築ハンズオンセミナー 第2日:講義No1
OpenStackクラウド基盤構築ハンズオンセミナー 第2日:講義No1
 

Similar to Mastodonインスタンスをセットアップできるスタートアップスクリプトについて

超簡単!Subversion入門 準備編
超簡単!Subversion入門 準備編超簡単!Subversion入門 準備編
超簡単!Subversion入門 準備編Shin Tanigawa
 
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについてCentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについてNobuyuki Sasaki
 
Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋Mori Shingo
 
PF部2011年12月勉強会.androidsola
PF部2011年12月勉強会.androidsolaPF部2011年12月勉強会.androidsola
PF部2011年12月勉強会.androidsolaandroid sola
 
20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!Midori Oge
 
WebRTC meetup Tokyo 1
WebRTC meetup  Tokyo 1WebRTC meetup  Tokyo 1
WebRTC meetup Tokyo 1mganeko
 
GPU on OpenStack - GPUインターナルクラウドのベストプラクティス - OpenStack最新情報セミナー 2017年7月
GPU on OpenStack - GPUインターナルクラウドのベストプラクティス - OpenStack最新情報セミナー 2017年7月GPU on OpenStack - GPUインターナルクラウドのベストプラクティス - OpenStack最新情報セミナー 2017年7月
GPU on OpenStack - GPUインターナルクラウドのベストプラクティス - OpenStack最新情報セミナー 2017年7月VirtualTech Japan Inc.
 
Apache CloudStack 4.0 インストール(ver0.5)
Apache CloudStack 4.0 インストール(ver0.5)Apache CloudStack 4.0 インストール(ver0.5)
Apache CloudStack 4.0 インストール(ver0.5)Yasuhiro Arai
 
SAS Visual Analytics 6.3 を使った DELL VRTX の評価
SAS Visual Analytics 6.3 を使った DELL VRTX の評価SAS Visual Analytics 6.3 を使った DELL VRTX の評価
SAS Visual Analytics 6.3 を使った DELL VRTX の評価Dell TechCenter Japan
 
Net opscoding#4発表資料
Net opscoding#4発表資料Net opscoding#4発表資料
Net opscoding#4発表資料Kenta Hattori
 
クックパッドのスケーリング
クックパッドのスケーリングクックパッドのスケーリング
クックパッドのスケーリングSatoshi Takada
 
データサイエンスワールドからC++を眺めてみる
データサイエンスワールドからC++を眺めてみるデータサイエンスワールドからC++を眺めてみる
データサイエンスワールドからC++を眺めてみるShintaro Fukushima
 
OpenStackでも重要な役割を果たすPacemakerを知ろう!
OpenStackでも重要な役割を果たすPacemakerを知ろう!OpenStackでも重要な役割を果たすPacemakerを知ろう!
OpenStackでも重要な役割を果たすPacemakerを知ろう!ksk_ha
 
20181212 - PGconf.ASIA - LT
20181212 - PGconf.ASIA - LT20181212 - PGconf.ASIA - LT
20181212 - PGconf.ASIA - LTKohei KaiGai
 
mod_auth_ticket - Bringing Single-Sign-On to lighttpd
mod_auth_ticket - Bringing Single-Sign-On to lighttpdmod_auth_ticket - Bringing Single-Sign-On to lighttpd
mod_auth_ticket - Bringing Single-Sign-On to lighttpdTaisuke Yamada
 
ラズパイでデバイスドライバを作ってみた。
ラズパイでデバイスドライバを作ってみた。ラズパイでデバイスドライバを作ってみた。
ラズパイでデバイスドライバを作ってみた。Kazuki Onishi
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on dockerHiroshi Miura
 

Similar to Mastodonインスタンスをセットアップできるスタートアップスクリプトについて (20)

超簡単!Subversion入門 準備編
超簡単!Subversion入門 準備編超簡単!Subversion入門 準備編
超簡単!Subversion入門 準備編
 
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについてCentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
 
Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋
 
PF部2011年12月勉強会.androidsola
PF部2011年12月勉強会.androidsolaPF部2011年12月勉強会.androidsola
PF部2011年12月勉強会.androidsola
 
Openstack+Ceph設定ガイド
Openstack+Ceph設定ガイドOpenstack+Ceph設定ガイド
Openstack+Ceph設定ガイド
 
20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!
 
OpenStack Grizzly構築手順書
OpenStack Grizzly構築手順書OpenStack Grizzly構築手順書
OpenStack Grizzly構築手順書
 
WebRTC meetup Tokyo 1
WebRTC meetup  Tokyo 1WebRTC meetup  Tokyo 1
WebRTC meetup Tokyo 1
 
GPU on OpenStack - GPUインターナルクラウドのベストプラクティス - OpenStack最新情報セミナー 2017年7月
GPU on OpenStack - GPUインターナルクラウドのベストプラクティス - OpenStack最新情報セミナー 2017年7月GPU on OpenStack - GPUインターナルクラウドのベストプラクティス - OpenStack最新情報セミナー 2017年7月
GPU on OpenStack - GPUインターナルクラウドのベストプラクティス - OpenStack最新情報セミナー 2017年7月
 
Apache CloudStack 4.0 インストール(ver0.5)
Apache CloudStack 4.0 インストール(ver0.5)Apache CloudStack 4.0 インストール(ver0.5)
Apache CloudStack 4.0 インストール(ver0.5)
 
SAS Visual Analytics 6.3 を使った DELL VRTX の評価
SAS Visual Analytics 6.3 を使った DELL VRTX の評価SAS Visual Analytics 6.3 を使った DELL VRTX の評価
SAS Visual Analytics 6.3 を使った DELL VRTX の評価
 
Net opscoding#4発表資料
Net opscoding#4発表資料Net opscoding#4発表資料
Net opscoding#4発表資料
 
クックパッドのスケーリング
クックパッドのスケーリングクックパッドのスケーリング
クックパッドのスケーリング
 
データサイエンスワールドからC++を眺めてみる
データサイエンスワールドからC++を眺めてみるデータサイエンスワールドからC++を眺めてみる
データサイエンスワールドからC++を眺めてみる
 
Ansible2.0と実用例
Ansible2.0と実用例Ansible2.0と実用例
Ansible2.0と実用例
 
OpenStackでも重要な役割を果たすPacemakerを知ろう!
OpenStackでも重要な役割を果たすPacemakerを知ろう!OpenStackでも重要な役割を果たすPacemakerを知ろう!
OpenStackでも重要な役割を果たすPacemakerを知ろう!
 
20181212 - PGconf.ASIA - LT
20181212 - PGconf.ASIA - LT20181212 - PGconf.ASIA - LT
20181212 - PGconf.ASIA - LT
 
mod_auth_ticket - Bringing Single-Sign-On to lighttpd
mod_auth_ticket - Bringing Single-Sign-On to lighttpdmod_auth_ticket - Bringing Single-Sign-On to lighttpd
mod_auth_ticket - Bringing Single-Sign-On to lighttpd
 
ラズパイでデバイスドライバを作ってみた。
ラズパイでデバイスドライバを作ってみた。ラズパイでデバイスドライバを作ってみた。
ラズパイでデバイスドライバを作ってみた。
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on docker
 

More from さくらインターネット株式会社

正解はどれ?『プログラミング教育』を取り巻くステークホルダーと議論
正解はどれ?『プログラミング教育』を取り巻くステークホルダーと議論正解はどれ?『プログラミング教育』を取り巻くステークホルダーと議論
正解はどれ?『プログラミング教育』を取り巻くステークホルダーと議論さくらインターネット株式会社
 
クラウドコミュニケーションAPI Twilio&sakura.io体験ハンズオン 20180312
クラウドコミュニケーションAPI Twilio&sakura.io体験ハンズオン 20180312クラウドコミュニケーションAPI Twilio&sakura.io体験ハンズオン 20180312
クラウドコミュニケーションAPI Twilio&sakura.io体験ハンズオン 20180312さくらインターネット株式会社
 
「sakura.io」「さくらのセキュアモバイルコネクト」ご紹介
「sakura.io」「さくらのセキュアモバイルコネクト」ご紹介「sakura.io」「さくらのセキュアモバイルコネクト」ご紹介
「sakura.io」「さくらのセキュアモバイルコネクト」ご紹介さくらインターネット株式会社
 
セキュアモバイルコネクト&sakura.ioと高火力コンピューティング
セキュアモバイルコネクト&sakura.ioと高火力コンピューティングセキュアモバイルコネクト&sakura.ioと高火力コンピューティング
セキュアモバイルコネクト&sakura.ioと高火力コンピューティングさくらインターネット株式会社
 

More from さくらインターネット株式会社 (20)

eBPFを用いたトレーシングについて
eBPFを用いたトレーシングについてeBPFを用いたトレーシングについて
eBPFを用いたトレーシングについて
 
さくらの学校支援プロジェクト PyCon mini Sapporo 2019
さくらの学校支援プロジェクト PyCon mini Sapporo 2019さくらの学校支援プロジェクト PyCon mini Sapporo 2019
さくらの学校支援プロジェクト PyCon mini Sapporo 2019
 
石狩での プログラミング教育支援 ~2年目の成果~
石狩でのプログラミング教育支援~2年目の成果~石狩でのプログラミング教育支援~2年目の成果~
石狩での プログラミング教育支援 ~2年目の成果~
 
さくらインターネットとコミュニティをつなぐ
さくらインターネットとコミュニティをつなぐさくらインターネットとコミュニティをつなぐ
さくらインターネットとコミュニティをつなぐ
 
【さくらのクラウド】サービス概要カタログ 2018年10月号
【さくらのクラウド】サービス概要カタログ 2018年10月号【さくらのクラウド】サービス概要カタログ 2018年10月号
【さくらのクラウド】サービス概要カタログ 2018年10月号
 
小学校プログラミング教育 ~石狩の場合~
小学校プログラミング教育 ~石狩の場合~小学校プログラミング教育 ~石狩の場合~
小学校プログラミング教育 ~石狩の場合~
 
【さくらのクラウド】サービス概要カタログ 2018年8月号
【さくらのクラウド】サービス概要カタログ 2018年8月号【さくらのクラウド】サービス概要カタログ 2018年8月号
【さくらのクラウド】サービス概要カタログ 2018年8月号
 
【さくらのクラウド】サービス概要カタログ 2018年7月号
【さくらのクラウド】サービス概要カタログ 2018年7月号【さくらのクラウド】サービス概要カタログ 2018年7月号
【さくらのクラウド】サービス概要カタログ 2018年7月号
 
パートナーと共創する さくらのクラウドのサービス展開
パートナーと共創する さくらのクラウドのサービス展開パートナーと共創する さくらのクラウドのサービス展開
パートナーと共創する さくらのクラウドのサービス展開
 
【さくらのクラウド】サービス概要カタログ 2018年6月号
【さくらのクラウド】サービス概要カタログ 2018年6月号 【さくらのクラウド】サービス概要カタログ 2018年6月号
【さくらのクラウド】サービス概要カタログ 2018年6月号
 
Sakura infini band-20180424
Sakura infini band-20180424Sakura infini band-20180424
Sakura infini band-20180424
 
【さくらのクラウド】サービス概要カタログ 2018年4月号
【さくらのクラウド】サービス概要カタログ 2018年4月号 【さくらのクラウド】サービス概要カタログ 2018年4月号
【さくらのクラウド】サービス概要カタログ 2018年4月号
 
正解はどれ?『プログラミング教育』を取り巻くステークホルダーと議論
正解はどれ?『プログラミング教育』を取り巻くステークホルダーと議論正解はどれ?『プログラミング教育』を取り巻くステークホルダーと議論
正解はどれ?『プログラミング教育』を取り巻くステークホルダーと議論
 
クラウドコミュニケーションAPI Twilio&sakura.io体験ハンズオン 20180312
クラウドコミュニケーションAPI Twilio&sakura.io体験ハンズオン 20180312クラウドコミュニケーションAPI Twilio&sakura.io体験ハンズオン 20180312
クラウドコミュニケーションAPI Twilio&sakura.io体験ハンズオン 20180312
 
【さくらのクラウド】サービス概要カタログ 2018年3月号
【さくらのクラウド】サービス概要カタログ 2018年3月号 【さくらのクラウド】サービス概要カタログ 2018年3月号
【さくらのクラウド】サービス概要カタログ 2018年3月号
 
駅すぱあとWebサービス&sakura.io体験ハンズオン 20180302
駅すぱあとWebサービス&sakura.io体験ハンズオン 20180302駅すぱあとWebサービス&sakura.io体験ハンズオン 20180302
駅すぱあとWebサービス&sakura.io体験ハンズオン 20180302
 
sakura.io体験ハンズオン 20180228
sakura.io体験ハンズオン 20180228sakura.io体験ハンズオン 20180228
sakura.io体験ハンズオン 20180228
 
「sakura.io」「さくらのセキュアモバイルコネクト」ご紹介
「sakura.io」「さくらのセキュアモバイルコネクト」ご紹介「sakura.io」「さくらのセキュアモバイルコネクト」ご紹介
「sakura.io」「さくらのセキュアモバイルコネクト」ご紹介
 
【さくらのクラウド】サービス概要カタログ 2018年2月号
【さくらのクラウド】サービス概要カタログ 2018年2月号 【さくらのクラウド】サービス概要カタログ 2018年2月号
【さくらのクラウド】サービス概要カタログ 2018年2月号
 
セキュアモバイルコネクト&sakura.ioと高火力コンピューティング
セキュアモバイルコネクト&sakura.ioと高火力コンピューティングセキュアモバイルコネクト&sakura.ioと高火力コンピューティング
セキュアモバイルコネクト&sakura.ioと高火力コンピューティング
 

Recently uploaded

株式会社メンバーズ社内報MEMBUZZ(メンバズ)2024年01月号(♯165)
株式会社メンバーズ社内報MEMBUZZ(メンバズ)2024年01月号(♯165)株式会社メンバーズ社内報MEMBUZZ(メンバズ)2024年01月号(♯165)
株式会社メンバーズ社内報MEMBUZZ(メンバズ)2024年01月号(♯165)Members_corp
 
【採用サイト用】KDDIテクノロジー株式会社様会社説明資料20240223.pdf
【採用サイト用】KDDIテクノロジー株式会社様会社説明資料20240223.pdf【採用サイト用】KDDIテクノロジー株式会社様会社説明資料20240223.pdf
【採用サイト用】KDDIテクノロジー株式会社様会社説明資料20240223.pdferinatanaka3
 
株式会社メンバーズ社内報MEMBUZZ(メンバズ)2024年02月号(♯166)
株式会社メンバーズ社内報MEMBUZZ(メンバズ)2024年02月号(♯166)株式会社メンバーズ社内報MEMBUZZ(メンバズ)2024年02月号(♯166)
株式会社メンバーズ社内報MEMBUZZ(メンバズ)2024年02月号(♯166)Members_corp
 
グローバル人材に特化した採用プラットフォーマー「1 Day Global Workshop」のサービス説明資料
グローバル人材に特化した採用プラットフォーマー「1 Day Global Workshop」のサービス説明資料グローバル人材に特化した採用プラットフォーマー「1 Day Global Workshop」のサービス説明資料
グローバル人材に特化した採用プラットフォーマー「1 Day Global Workshop」のサービス説明資料omoccontact
 
20240222 URANAI you & HUMAN FARM in TOKYO.pdf
20240222 URANAI you & HUMAN FARM in TOKYO.pdf20240222 URANAI you & HUMAN FARM in TOKYO.pdf
20240222 URANAI you & HUMAN FARM in TOKYO.pdfssuser80a51f
 
インターン向け会社紹介資料 (株式会社Suzak)
インターン向け会社紹介資料                (株式会社Suzak)インターン向け会社紹介資料                (株式会社Suzak)
インターン向け会社紹介資料 (株式会社Suzak)suzak392
 
株式会社テックビズ 会社概要資料|「働き方を変え、世界を変えていく」|フリーランス向けプラットフォーム
株式会社テックビズ 会社概要資料|「働き方を変え、世界を変えていく」|フリーランス向けプラットフォーム株式会社テックビズ 会社概要資料|「働き方を変え、世界を変えていく」|フリーランス向けプラットフォーム
株式会社テックビズ 会社概要資料|「働き方を変え、世界を変えていく」|フリーランス向けプラットフォームKensukeOzawa
 
未来統計v24プロダクト資料<2050年までの正確な商圏人口を推計するための統計データ>
未来統計v24プロダクト資料<2050年までの正確な商圏人口を推計するための統計データ>未来統計v24プロダクト資料<2050年までの正確な商圏人口を推計するための統計データ>
未来統計v24プロダクト資料<2050年までの正確な商圏人口を推計するための統計データ>Eiichi Mano
 
GMOクラウドのセールスパートナー制度(パートナー制度の歴史、概要、販売事例など).pdf
GMOクラウドのセールスパートナー制度(パートナー制度の歴史、概要、販売事例など).pdfGMOクラウドのセールスパートナー制度(パートナー制度の歴史、概要、販売事例など).pdf
GMOクラウドのセールスパートナー制度(パートナー制度の歴史、概要、販売事例など).pdfmayuubukata
 
株式会社テックビズ 会社概要資料|「働き方を変え、世界を変えていく」|フリーランス向けプラットフォーム
株式会社テックビズ 会社概要資料|「働き方を変え、世界を変えていく」|フリーランス向けプラットフォーム株式会社テックビズ 会社概要資料|「働き方を変え、世界を変えていく」|フリーランス向けプラットフォーム
株式会社テックビズ 会社概要資料|「働き方を変え、世界を変えていく」|フリーランス向けプラットフォームKensukeOzawa
 
オーマイグラス 会社説明会資料(Oh My Glasses Inc. Company Information)
オーマイグラス 会社説明会資料(Oh My Glasses Inc. Company Information)オーマイグラス 会社説明会資料(Oh My Glasses Inc. Company Information)
オーマイグラス 会社説明会資料(Oh My Glasses Inc. Company Information)ohmyglasses
 
R09会社説明資料_採用代行/RPO/面接代行/エージェントコントロール_2307
R09会社説明資料_採用代行/RPO/面接代行/エージェントコントロール_2307R09会社説明資料_採用代行/RPO/面接代行/エージェントコントロール_2307
R09会社説明資料_採用代行/RPO/面接代行/エージェントコントロール_2307yuishigehisa
 
譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット
譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット
譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット株式会社Saleshub
 
20240227 zaim academy counseling lesson .pdf
20240227 zaim academy counseling lesson .pdf20240227 zaim academy counseling lesson .pdf
20240227 zaim academy counseling lesson .pdfssuser80a51f
 

Recently uploaded (14)

株式会社メンバーズ社内報MEMBUZZ(メンバズ)2024年01月号(♯165)
株式会社メンバーズ社内報MEMBUZZ(メンバズ)2024年01月号(♯165)株式会社メンバーズ社内報MEMBUZZ(メンバズ)2024年01月号(♯165)
株式会社メンバーズ社内報MEMBUZZ(メンバズ)2024年01月号(♯165)
 
【採用サイト用】KDDIテクノロジー株式会社様会社説明資料20240223.pdf
【採用サイト用】KDDIテクノロジー株式会社様会社説明資料20240223.pdf【採用サイト用】KDDIテクノロジー株式会社様会社説明資料20240223.pdf
【採用サイト用】KDDIテクノロジー株式会社様会社説明資料20240223.pdf
 
株式会社メンバーズ社内報MEMBUZZ(メンバズ)2024年02月号(♯166)
株式会社メンバーズ社内報MEMBUZZ(メンバズ)2024年02月号(♯166)株式会社メンバーズ社内報MEMBUZZ(メンバズ)2024年02月号(♯166)
株式会社メンバーズ社内報MEMBUZZ(メンバズ)2024年02月号(♯166)
 
グローバル人材に特化した採用プラットフォーマー「1 Day Global Workshop」のサービス説明資料
グローバル人材に特化した採用プラットフォーマー「1 Day Global Workshop」のサービス説明資料グローバル人材に特化した採用プラットフォーマー「1 Day Global Workshop」のサービス説明資料
グローバル人材に特化した採用プラットフォーマー「1 Day Global Workshop」のサービス説明資料
 
20240222 URANAI you & HUMAN FARM in TOKYO.pdf
20240222 URANAI you & HUMAN FARM in TOKYO.pdf20240222 URANAI you & HUMAN FARM in TOKYO.pdf
20240222 URANAI you & HUMAN FARM in TOKYO.pdf
 
インターン向け会社紹介資料 (株式会社Suzak)
インターン向け会社紹介資料                (株式会社Suzak)インターン向け会社紹介資料                (株式会社Suzak)
インターン向け会社紹介資料 (株式会社Suzak)
 
株式会社テックビズ 会社概要資料|「働き方を変え、世界を変えていく」|フリーランス向けプラットフォーム
株式会社テックビズ 会社概要資料|「働き方を変え、世界を変えていく」|フリーランス向けプラットフォーム株式会社テックビズ 会社概要資料|「働き方を変え、世界を変えていく」|フリーランス向けプラットフォーム
株式会社テックビズ 会社概要資料|「働き方を変え、世界を変えていく」|フリーランス向けプラットフォーム
 
未来統計v24プロダクト資料<2050年までの正確な商圏人口を推計するための統計データ>
未来統計v24プロダクト資料<2050年までの正確な商圏人口を推計するための統計データ>未来統計v24プロダクト資料<2050年までの正確な商圏人口を推計するための統計データ>
未来統計v24プロダクト資料<2050年までの正確な商圏人口を推計するための統計データ>
 
GMOクラウドのセールスパートナー制度(パートナー制度の歴史、概要、販売事例など).pdf
GMOクラウドのセールスパートナー制度(パートナー制度の歴史、概要、販売事例など).pdfGMOクラウドのセールスパートナー制度(パートナー制度の歴史、概要、販売事例など).pdf
GMOクラウドのセールスパートナー制度(パートナー制度の歴史、概要、販売事例など).pdf
 
株式会社テックビズ 会社概要資料|「働き方を変え、世界を変えていく」|フリーランス向けプラットフォーム
株式会社テックビズ 会社概要資料|「働き方を変え、世界を変えていく」|フリーランス向けプラットフォーム株式会社テックビズ 会社概要資料|「働き方を変え、世界を変えていく」|フリーランス向けプラットフォーム
株式会社テックビズ 会社概要資料|「働き方を変え、世界を変えていく」|フリーランス向けプラットフォーム
 
オーマイグラス 会社説明会資料(Oh My Glasses Inc. Company Information)
オーマイグラス 会社説明会資料(Oh My Glasses Inc. Company Information)オーマイグラス 会社説明会資料(Oh My Glasses Inc. Company Information)
オーマイグラス 会社説明会資料(Oh My Glasses Inc. Company Information)
 
R09会社説明資料_採用代行/RPO/面接代行/エージェントコントロール_2307
R09会社説明資料_採用代行/RPO/面接代行/エージェントコントロール_2307R09会社説明資料_採用代行/RPO/面接代行/エージェントコントロール_2307
R09会社説明資料_採用代行/RPO/面接代行/エージェントコントロール_2307
 
譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット
譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット
譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット譲受企業様用パンフレット
 
20240227 zaim academy counseling lesson .pdf
20240227 zaim academy counseling lesson .pdf20240227 zaim academy counseling lesson .pdf
20240227 zaim academy counseling lesson .pdf
 

Mastodonインスタンスをセットアップできるスタートアップスクリプトについて

  • 1. 1 DATE COMPANY SERVICE VERSION |No.2 Mastodon インスタンス に必要なもの |No.4 スクリプトでさ くらのVPSに⽴ ててみる |No.1 スタートアップ スクリプトとは 2017/6/28 さくらインターネット株式会社 根本 昌季さくらのクラウド |No.3 スクリプ トの処理と 補⾜Mastodonインスタンスを セットアップできるスタート アップスクリプトについて
  • 2. 22 • ⽒名 根本 昌季 • 所属/業務内容 技術本部 ミドルウェアグループ/クラウドチーム(運⽤メンバー) • 前職までの経歴 DNS/メール/監視サーバの構築/運⽤を主に担当 • 趣味 スクーバダイビング/ジョギング ⾃⼰紹介
  • 3. 33 ✓ さくらのクラウドでサーバの起動時に実⾏するShellスクリプト ✓ コントロールパネルに⼊⼒した値を変数として使⽤することができる ✓ スクリプトの⻑さは 10000⽂字まで ✓ 詳しくはクラウドニュースを参照 スタートアップスクリプトとは スタートアップスクリプトとは
  • 7. 77 ✓ Ruby ✓ Node ✓ Postgres ✓ Redis ✓ Mastodon Mastodonインスタンスに 必要なアプリケーション Mastodonインスタンスに必要なもの
  • 8. 88 ✓ DNS レコード ブラウザでアクセスする為にAレコードの登録が必要 ✓ SMTP サーバ Mast odonへのアカウント登録時にメールを送信するのに必要 ✓ HT TPSに対応した Web Proxy サーバ SSL/TLS証明書が必要 Mastodonインスタンスを 公開する為に必要な設定 Mastodonインスタンスに必要なもの
  • 9. 99 ✓ DNS レコード ブラウザでアクセスする為にAレコードの登録が必要 ✓ SMTP サーバ Mast odonへのアカウント登録時にメールを送信するのに必要 ✓ HT TPSに対応した Web Proxy サーバ SSL/TLS証明書が必要 Mastodonインスタンスを 公開する為に必要な設定 Mastodonインスタンスに必要なもの さくらのクラウドDNSに設定 ⾃⼒配送ができるように設定 Lets Encrypt から取得
  • 10. 1010 ✓ 事前作業として以下の2つが必要となります さ く ら の ク ラ ウ ド D N S に ゾ ー ン の 登 録 と 委譲をし て い る こ と さ く ら の ク ラ ウ ド A P I の ア ク セ ス ト ー ク ン を 取 得 し て い る こ と ✓ 詳しくは下記を参照 さくらのナレッジ: ゼ ロ か ら 始 め る マ ス ト ド ン さ く ら の ク ラ ウ ド ニ ュ ー ス : M a s t o d o n , D N S ア プ ラ イ ア ン ス スタートアップスクリプトで Mastodonインスタンスを⽴ててみる スクリプトの処理と補⾜
  • 11. 1111 1 . 追 加 リ ポ ジ ト リ の 設 定 、 パ ッ ケ ー ジ の ア ッ プ デ ー ト と イ ン ス ト ー ル 2 . D N S の 登 録 ( さ く ら の ク ラ ウ ド D N S : A , M X , T X T ) 3 . p o s t g r e s q l , r e d i s の 起 動 4 . r u b y 2 . 4 . 1 の イ ン ス ト ー ル 5 . m a s t o d o n の イ ン ス ト ー ル 、 設 定 と 起 動 6 . n g i n x の 設 定 7 . p o s t f i x の 設 定 と 再 起 動 8 . f i r e w a l l の 設 定 と r e l o a d 9 . L e t s E n c r y p t で 証 明 書 取 得 1 0 . n g i n x の 起 動 1 1 . D N S の 登 録 ( P T R ) スタートアップスクリプトの処理 スクリプトの処理と補⾜
  • 12. 1212 1 . 追 加 リ ポ ジ ト リ の 設 定 、 パ ッ ケ ー ジ の ア ッ プ デ ー ト と イ ン ス ト ー ル 2 . D N S の 登 録 ( さ く ら の ク ラ ウ ド D N S : A , M X , T X T ) 3 . p o s t g r e s q l , r e d i s の 起 動 4 . r u b y 2 . 4 . 1 の イ ン ス ト ー ル 5 . m a s t o d o n の イ ン ス ト ー ル 、 設 定 と 起 動 6 . n g i n x の 設 定 7 . p o s t f i x の 設 定 と 再 起 動 8 . f i r e w a l l の 設 定 と r e l o a d 9 . L e t s E n c r y p t で 証 明 書 取 得 1 0 . n g i n x の 起 動 1 1 . D N S の 登 録 ( P T R ) スタートアップスクリプトの処理 スクリプトの処理と補⾜ エラーでセットアップが ⽌まる可能性のある場所 エラーでセットアップが ⽌まる可能性のある場所 エラーでセットアップが ⽌まる可能性のある場所
  • 13. 1313 1 . 追 加 リ ポ ジ ト リ の 設 定 、 パ ッ ケ ー ジ の ア ッ プ デ ー ト と イ ン ス ト ー ル 2 . D N S の 登 録 ( さ く ら の ク ラ ウ ド D N S : A , M X , T X T ) 3 . p o s t g r e s q l , r e d i s の 起 動 4 . r u b y 2 . 4 . 1 の イ ン ス ト ー ル 5 . m a s t o d o n の イ ン ス ト ー ル 、 設 定 と 起 動 6 . n g i n x の 設 定 7 . p o s t f i x の 設 定 と 再 起 動 8 . f i r e w a l l の 設 定 と r e l o a d 9 . L e t s E n c r y p t で 証 明 書 取 得 1 0 . n g i n x の 起 動 1 1 . D N S の 登 録 ( P T R ) スタートアップスクリプトの処理 スクリプトの処理と補⾜ # ログのリンクを作成 ln -s $(find /root/.sacloud-api/notes/*log) /tmp/startup_script.log # リポジトリの設定 yum install -y yum-utils yum-config-manager --enable epel yum install -y http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm curl -sL https://rpm.nodesource.com/setup_6.x | bash - # パッケージのアップデートとインストール yum update –y yum install -y ImageMagick ffmpeg redis rubygem-redis postgresql-{server,devel,contrib} authd nodejs {openssl,readline,zlib,libxml2,libxslt,protobuf,ffmpeg}-devel protobuf-compiler nginx jq bind-utils npm install -g yarn スクリプトの進捗確認⽅法 tail –f /tmp/startup_script.log
  • 14. 1414 1 . 追 加 リ ポ ジ ト リ の 設 定 、 パ ッ ケ ー ジ の ア ッ プ デ ー ト と イ ン ス ト ー ル 2 . D N S の 登 録 ( さ く ら の ク ラ ウ ド D N S : A , M X , T X T ) 3 . p o s t g r e s q l , r e d i s の 起 動 4 . r u b y 2 . 4 . 1 の イ ン ス ト ー ル 5 . m a s t o d o n の イ ン ス ト ー ル 、 設 定 と 起 動 6 . n g i n x の 設 定 7 . p o s t f i x の 設 定 と 再 起 動 8 . f i r e w a l l の 設 定 と r e l o a d 9 . L e t s E n c r y p t で 証 明 書 取 得 1 0 . n g i n x の 起 動 1 1 . D N S の 登 録 ( P T R ) スタートアップスクリプトの処理 スクリプトの処理と補⾜ # DNS登録 if [ $(dig ${DOMAIN} ns +short | egrep -c '^ns[0-9]+.gslb[0-9]+.sakura.ne.jp.$') -ne 2 ] Then echo "お客様ドメインのNSレコードにさくらのクラウドDNSが設定されておりません” exit 1 Fi ZONE=$(jq -r ".Zone.Name" /root/.sacloud-api/server.json) BASE=https://secure.sakura.ad.jp/cloud/zone/${ZONE}/api/cloud/1.1 API=${BASE}/commonserviceitem/ RESJS=resource.json … …(省略
  • 15. 1515 1 . 追 加 リ ポ ジ ト リ の 設 定 、 パ ッ ケ ー ジ の ア ッ プ デ ー ト と イ ン ス ト ー ル 2 . D N S の 登 録 ( さ く ら の ク ラ ウ ド D N S : A , M X , T X T ) 3 . p o s t g r e s q l , r e d i s の 起 動 4 . r u b y 2 . 4 . 1 の イ ン ス ト ー ル 5 . m a s t o d o n の イ ン ス ト ー ル 、 設 定 と 起 動 6 . n g i n x の 設 定 7 . p o s t f i x の 設 定 と 再 起 動 8 . f i r e w a l l の 設 定 と r e l o a d 9 . L e t s E n c r y p t で 証 明 書 取 得 1 0 . n g i n x の 起 動 1 1 . D N S の 登 録 ( P T R ) スタートアップスクリプトの処理 スクリプトの処理と補⾜ # postgresql, redis export PGSETUP_INITDB_OPTIONS="--encoding=UTF-8 --no-locale” postgresql-setup initdb sed -i "s/ident/trust/" /var/lib/pgsql/data/pg_hba.conf systemctl enable postgresql redis systemctl start postgresql redis su - postgres -c "createuser --createdb mastodon".
  • 16. 1616 1 . 追 加 リ ポ ジ ト リ の 設 定 、 パ ッ ケ ー ジ の ア ッ プ デ ー ト と イ ン ス ト ー ル 2 . D N S の 登 録 ( さ く ら の ク ラ ウ ド D N S : A , M X , T X T ) 3 . p o s t g r e s q l , r e d i s の 起 動 4 . r u b y 2 . 4 . 1 の イ ン ス ト ー ル 5 . m a s t o d o n の イ ン ス ト ー ル 、 設 定 と 起 動 6 . n g i n x の 設 定 7 . p o s t f i x の 設 定 と 再 起 動 8 . f i r e w a l l の 設 定 と r e l o a d 9 . L e t s E n c r y p t で 証 明 書 取 得 1 0 . n g i n x の 起 動 1 1 . D N S の 登 録 ( P T R ) スタートアップスクリプトの処理 スクリプトの処理と補⾜ Mastodon公式ドキュメントを参考にインストールをしている 公式ドキュメントとの主な違い mastodon のバージョンは tag がついた最新版(rcは除く) nginx は https のみ設定し http から https へのリダイレクトの設定はしていない smtpサーバは localhost の 25 を設定している
  • 17. 1717 1 . 追 加 リ ポ ジ ト リ の 設 定 、 パ ッ ケ ー ジ の ア ッ プ デ ー ト と イ ン ス ト ー ル 2 . D N S の 登 録 ( さ く ら の ク ラ ウ ド D N S : A , M X , T X T ) 3 . p o s t g r e s q l , r e d i s の 起 動 4 . r u b y 2 . 4 . 1 の イ ン ス ト ー ル 5 . m a s t o d o n の イ ン ス ト ー ル 、 設 定 と 起 動 6 . n g i n x の 設 定 7 . p o s t f i x の 設 定 と 再 起 動 8 . f i r e w a l l の 設 定 と r e l o a d 9 . L e t s E n c r y p t で 証 明 書 取 得 1 0 . n g i n x の 起 動 1 1 . D N S の 登 録 ( P T R ) スタートアップスクリプトの処理 スクリプトの処理と補⾜ # postfix cat <<_EOL_>> /etc/postfix/main.cf myhostname = ${DOMAIN} smtp_tls_CAfile = /etc/pki/tls/certs/ca-bundle.crt smtp_tls_security_level = maysmtp_tls_loglevel = 1 smtpd_client_connection_count_limit = 5 smtpd_client_message_rate_limit = 5 smtpd_client_recipient_rate_limit = 5 disable_vrfy_command = yes smtpd_discard_ehlo_keywords = dsn, enhancedstatuscodes, etrn _EOL_ sed -i -e 's/^inet_interfaces.*/inet_interfaces = all/' -e 's/^inet_protocols = all/inet_protocols = ipv4/' /etc/postfix/main.cf systemctl restart postfix mastodon@ドメイン宛に届いた メールの確認⽅法 yum install –y mailx su – mstodon –c “mail”
  • 18. 1818 1 . 追 加 リ ポ ジ ト リ の 設 定 、 パ ッ ケ ー ジ の ア ッ プ デ ー ト と イ ン ス ト ー ル 2 . D N S の 登 録 ( さ く ら の ク ラ ウ ド D N S : A , M X , T X T ) 3 . p o s t g r e s q l , r e d i s の 起 動 4 . r u b y 2 . 4 . 1 の イ ン ス ト ー ル 5 . m a s t o d o n の イ ン ス ト ー ル 、 設 定 と 起 動 6 . n g i n x の 設 定 7 . p o s t f i x の 設 定 と 再 起 動 8 . f i r e w a l l の 設 定 と r e l o a d 9 . L e t s E n c r y p t で 証 明 書 取 得 1 0 . n g i n x の 起 動 1 1 . D N S の 登 録 ( P T R ) スタートアップスクリプトの処理 スクリプトの処理と補⾜ # firewall firewall-cmd --permanent --add-port=25/tcp --add-port=443/tcp firewall-cmd --reload
  • 19. 1919 1 . 追 加 リ ポ ジ ト リ の 設 定 、 パ ッ ケ ー ジ の ア ッ プ デ ー ト と イ ン ス ト ー ル 2 . D N S の 登 録 ( さ く ら の ク ラ ウ ド D N S : A , M X , T X T ) 3 . p o s t g r e s q l , r e d i s の 起 動 4 . r u b y 2 . 4 . 1 の イ ン ス ト ー ル 5 . m a s t o d o n の イ ン ス ト ー ル 、 設 定 と 起 動 6 . n g i n x の 設 定 7 . p o s t f i x の 設 定 と 再 起 動 8 . f i r e w a l l の 設 定 と r e l o a d 9 . L e t s E n c r y p t で 証 明 書 取 得 1 0 . n g i n x の 起 動 1 1 . D N S の 登 録 ( P T R ) スタートアップスクリプトの処理 スクリプトの処理と補⾜ # Lets Encrypt cd /usr/local git clone https://github.com/certbot/certbot export PATH=/usr/local/certbot:${PATH} CERT=/etc/letsencrypt/live/${DOMAIN}/fullchain.pem CA="certbot-auto -n certonly --standalone -d ${DOMAIN} -m ${MADDR} --agree-tos"${CA} for x in $(seq 1 5) do if [ ! -f ${CERT} ] then ${CA} sleep 300 else continue fi done …(省略
  • 20. 2020 1 . 追 加 リ ポ ジ ト リ の 設 定 、 パ ッ ケ ー ジ の ア ッ プ デ ー ト と イ ン ス ト ー ル 2 . D N S の 登 録 ( さ く ら の ク ラ ウ ド D N S : A , M X , T X T ) 3 . p o s t g r e s q l , r e d i s の 起 動 4 . r u b y 2 . 4 . 1 の イ ン ス ト ー ル 5 . m a s t o d o n の イ ン ス ト ー ル 、 設 定 と 起 動 6 . n g i n x の 設 定 7 . p o s t f i x の 設 定 と 再 起 動 8 . f i r e w a l l の 設 定 と r e l o a d 9 . L e t s E n c r y p t で 証 明 書 取 得 1 0 . n g i n x の 起 動 1 1 . D N S の 登 録 ( P T R ) スタートアップスクリプトの処理 スクリプトの処理と補⾜ # PTR 登録 API=${BASE}/ipaddress/${IPADDR} cd /root/.sacloud-api/notesPTRJS=ptr.json cat <<_EOL_> ${PTRJS} { "IPAddress": { "HostName": "${DOMAIN}" }} _EOL_ set -x curl -s --user "${KEY}" -X PUT -d "$(cat ${PTRJS} | jq -c .)" ${API} |jq ".” BLANK=$(curl -s --user "${KEY}" -X GET ${API} | jq -r "select(.IPAddress.HostName == ¥"${DOMAIN}¥") | .is_ok") set –x …(省略
  • 22. 2222 ✓ サーバの再起動 パ ッ ケ ー ジ ア ッ プ デ ー ト 後 、 再 起 動 し て い な い の で 再 起 動 を お 勧 め し ま す 。 ✓ Mastodonの管理者メニューにあるドメインブロック設定のメディ アファイル拒否の有効化 サ ー バ の デ ィ ス ク 容 量 や I / O を 節 約 し た い 管 理 者 の ⽅ は 、 画 像 が 頻 繁 に や り と り さ れ る リ モ ー ト イ ン ス タ ン ス の メ デ ィ ア フ ァ イ ル を 拒 否 す る こ と を お 勧 め し ま す 。 ( 既 に ⼤ 量 に フ ァ イ ル が あ る 状 態 で 設 定 を す る と 削 除 処 理 で サ ー バ に 負 荷 が か か り ま す ) スタートアップスクリプト完了後の お勧め作業 スクリプトの処理と補⾜
  • 23. 2323
  • 24. 2424 ✓ Mastodonインスタンスのサブドメイン(※)の対応 テスト⽤ドメインがLet s Encr y ptの証明書取得数制限に達してテストができな くなった。 後⽇、改修で対応しようとしたが、その時には10000⽂字では収まらなかった。 (※さくらのクラウドDNSに登録するドメインをZone Apexとしてした場合のサブドメ イン) ✓ メール送信ドメイン認証技術のDKIM, DMARCの対応 1 0 0 0 0 ⽂ 字 で は 収 ま ら な か っ た 。 スタートアップスクリプトに 盛り込め(ま)なかったもの! スクリプトの処理と補⾜
  • 25. 2525 1. さくらのクラウドDNSへのゾーン登録とAPI キーの作成(事前作業) 2. さくらのVPSのコントロールパネルでC ent OS 7のサーバを作成 3. さくらのクラウドのスタートアップスクリプトを該当のVPSサーバに⽤意 4. VPSサーバでAPI キーを環境変数に設定 5. VPSサーバでスクリプトを修正 6. VPSサーバでスクリプトを実⾏ 7. さくらのVPSのコントロールパネルでDNSの登録(PTR) 8. VPSサーバの再起動 さくらのVPSにスタートアップスクリプト でMastodonインスタンスを⽴てる⼿順 スクリプトでさくらのVPSに⽴ててみる
  • 26. 2626 1. さくらのクラウドDNSへのゾーン登録とAPIキーの作成(事前作業) 2. さくらのVPSのコントロールパネルでC ent OS 7のサーバを作成 3. さくらのクラウドのスタートアップスクリプトを該当のVPSサーバに⽤意 4. VPSサーバでAPI キーを環境変数に設定 5. VPSサーバでスクリプトを修正 6. VPSサーバでスクリプトを実⾏ 7. さくらのVPSのコントロールパネルでDNSの登録(PTR) 8. VPSサーバの再起動 さくらのVPSにスタートアップスクリプト でMastodonインスタンスを⽴てる⼿順 スクリプトでさくらのVPSに⽴ててみる ゼロから始めるマストドン を参照してください
  • 27. 2727 1. さくらのクラウドDNSへのゾーン登録とAPI キーの作成(事前作業) 2. さくらのVPSのコントロールパネルでCentOS7のサーバを作成 3. さくらのクラウドのスタートアップスクリプトを該当のVPSサーバに⽤意 4. VPSサーバでAPI キーを環境変数に設定 5. VPSサーバでスクリプトを修正 6. VPSサーバでスクリプトを実⾏ 7. さくらのVPSのコントロールパネルでDNSの登録(PTR) 8. VPSサーバの再起動 さくらのVPSにスタートアップスクリプト でMastodonインスタンスを⽴てる⼿順 スクリプトでさくらのVPSに⽴ててみる さくらのVPSのコントロールパネルの各種設定から標準OSインストールと進み、 インストールOS を CentOS7 x86_64 で選択する
  • 28. 2828 1. さくらのクラウドDNSへのゾーン登録とAPI キーの作成(事前作業) 2. さくらのVPSのコントロールパネルでC ent OS 7のサーバを作成 3. さくらのクラウドのスタートアップスクリプトを該当のVPSサーバに⽤意 4. VPSサーバでAPI キーを環境変数に設定 5. VPSサーバでスクリプトを修正 6. VPSサーバでスクリプトを実⾏ 7. さくらのVPSのコントロールパネルでDNSの登録(PTR) 8. VPSサーバの再起動 さくらのVPSにスタートアップスクリプト でMastodonインスタンスを⽴てる⼿順 スクリプトでさくらのVPSに⽴ててみる # vi mastodon_startup_script.sh # chmod 755 mastodon_startup_script.sh
  • 29. 2929 1. さくらのクラウドDNSへのゾーン登録とAPI キーの作成(事前作業) 2. さくらのVPSのコントロールパネルでC ent OS 7のサーバを作成 3. さくらのクラウドのスタートアップスクリプトを該当のVPSサーバに⽤意 4. VPSサーバでAPIキーを環境変数に設定 5. VPSサーバでスクリプトを修正 6. VPSサーバでスクリプトを実⾏ 7. さくらのVPSのコントロールパネルでDNSの登録(PTR) 8. VPSサーバの再起動 さくらのVPSにスタートアップスクリプト でMastodonインスタンスを⽴てる⼿順 スクリプトでさくらのVPSに⽴ててみる # export SACLOUD_APIKEY_ACCESS_TOKEN=******** # export SACLOUD_APIKEY_ACCESS_TOKEN_SECRET=********
  • 30. 3030 1. さくらのクラウドDNSへのゾーン登録とAPI キーの作成(事前作業) 2. さくらのVPSのコントロールパネルでC ent OS 7のサーバを作成 3. さくらのクラウドのスタートアップスクリプトを該当のVPSサーバに⽤意 4. VPSサーバでAPI キーを環境変数に設定 5. VPSサーバでスクリプトを修正 6. VPSサーバでスクリプトを実⾏ 7. さくらのVPSのコントロールパネルでDNSの登録(PTR) 8. VPSサーバの再起動 さくらのVPSにスタートアップスクリプト でMastodonインスタンスを⽴てる⼿順 スクリプトでさくらのVPSに⽴ててみる # sed -i -e 's/@@@ZONE@@@/vps.example.com/' -e 's/^ZONE=.*/ZONE=tk1a/' mastodon_startup_script.sh vps.example.com をさくらのクラウドDNSに登録したゾーン名にすること
  • 31. 3131 1. さくらのクラウドDNSへのゾーン登録とAPI キーの作成(事前作業) 2. さくらのVPSのコントロールパネルでC ent OS 7のサーバを作成 3. さくらのクラウドのスタートアップスクリプトを該当のVPSサーバに⽤意 4. VPSサーバでAPI キーを環境変数に設定 5. VPSサーバでスクリプトを修正 6. VPSサーバでスクリプトを実⾏ 7. さくらのVPSのコントロールパネルでDNSの登録(PTR) 8. VPSサーバの再起動 さくらのVPSにスタートアップスクリプト でMastodonインスタンスを⽴てる⼿順 スクリプトでさくらのVPSに⽴ててみる 事前に正しくドメインがさくらのクラウドDNSに登録されているか確認する(nsX.gslbX.sakura.ne.jp. が表⽰されればOK) # dig vps.example.com ns +short ns1.gslb4.sakura.ne.jp. ns2.gslb4.sakura.ne.jp. スタートアップスクリプト実⾏ # ./mastodon_startup_script.sh | tee mastodon_startup_script.log メモリ512MBで約40分かかりました。
  • 32. 3232 1. さくらのクラウドDNSへのゾーン登録とAPI キーの作成(事前作業) 2. さくらのVPSのコントロールパネルでC ent OS 7のサーバを作成 3. さくらのクラウドのスタートアップスクリプトを該当のVPSサーバに⽤意 4. VPSサーバでAPI キーを環境変数に設定 5. VPSサーバでスクリプトを修正 6. VPSサーバでスクリプトを実⾏ 7. さくらのVPSのコントロールパネルでDNSの登録(PTR) 8. VPSサーバの再起動 さくらのVPSにスタートアップスクリプト でMastodonインスタンスを⽴てる⼿順 スクリプトでさくらのVPSに⽴ててみる 下記が表⽰されれば、Mastodonインスタンスのセットアップは完了 “逆引きの登録に失敗しました” 各種設定のホスト名逆引き登録からカスタムを選択し、逆引きを登録する
  • 33. 3333 1. さくらのクラウドDNSへのゾーン登録とAPI キーの作成(事前作業) 2. さくらのVPSのコントロールパネルでC ent OS 7のサーバを作成 3. さくらのクラウドのスタートアップスクリプトを該当のVPSサーバに⽤意 4. VPSサーバでAPI キーを環境変数に設定 5. VPSサーバでスクリプトを修正 6. VPSサーバでスクリプトを実⾏ 7. さくらのVPSのコントロールパネルでDNSの登録(PTR) 8. VPSサーバの再起動 さくらのVPSにスタートアップスクリプト でMastodonインスタンスを⽴てる⼿順 スクリプトでさくらのVPSに⽴ててみる # shutdown –r now