Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
teleka.suを支える技術
Search
sksat
June 19, 2021
Technology
1
13k
teleka.suを支える技術
VRC-LT #9でやったやつ
sksat
June 19, 2021
Tweet
Share
More Decks by sksat
See All by sksat
AE Rust 勉強会: github-webhook-rs
sksat
0
170
万国のサーバ管理者よ, 自動化せよ!
sksat
1
6.1k
ふつうのLinuxプログラミング-プロセスとハードウェア
sksat
25
7.2k
小型ハイブリッド用フライトシミュレータの開発
sksat
0
900
大学生でもできる!ハイブリッドロケット入門
sksat
0
1.2k
CORE 電装講習第1回
sksat
2
670
2019 spring WIP
sksat
1
100
CombNaf3.pdf
sksat
0
240
Other Decks in Technology
See All in Technology
Classmethod流のPlatform Engineering / classmethod-platform-engineering-devio2024
tomoki10
0
480
E2Eテスト自動化プラットフォームにおけるAIの活用
shift_evolve
0
190
Azure AI ことはじめ
tsubakimoto_s
0
130
エンジニア向け会社紹介資料
caddi_eng
14
230k
フルリモートワークはエンジニアの夢を叶えたか? #cm_odyssey
mamohacy
2
600
LINE WORKSへ簡単通知!Incoming Webhookアプリの紹介
mmclsntr
0
110
エンジニアリングマネージャーはどう学んでいくのか #devsumi / How Do Engineering Managers Continue to Learn and Grow?
expajp
4
1.3k
大規模ドラレコデータ収集・機械学習基盤を支える AWS CDK 〜導入・運用事例紹介〜
pemugi
0
110
CEL(Common Expression Language)で書いた条件にマッチしたIAM Policyを見つける / iam-policy-finder
fujiwara3
0
720
20240724_cm_odyssey_hibiyatech
hiashisan
0
110
20240725 LLMによるDXのビジョンと、今何からやるべきか @Azure OpenAI Service Dev Day
nrryuya
3
1.2k
成長期に歩みを止めないための創業期の開発文化形成
mayah
6
420
Featured
See All Featured
Writing Fast Ruby
sferik
623
60k
Build your cross-platform service in a week with App Engine
jlugia
227
17k
Rails Girls Zürich Keynote
gr2m
93
13k
Building a Modern Day E-commerce SEO Strategy
aleyda
25
6.7k
How to name files
jennybc
67
96k
Building Better People: How to give real-time feedback that sticks.
wjessup
357
18k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
353
29k
Web development in the modern age
philhawksworth
203
10k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.4k
What the flash - Photography Introduction
edds
65
11k
Atom: Resistance is Futile
akmur
261
25k
Being A Developer After 40
akosma
72
580k
Transcript
None
自己紹介 自己紹介 ・sksat ・オタク.宇宙・計算機・百合などがすき. ・Twitter:@sksat_tty, GitHub:sksat 第1章
自己紹介 自己紹介 ・sksat ・オタク.宇宙・計算機・百合などがすき. ・Twitter:@sksat_tty, GitHub:sksat ・VRChatでは 第1章
自己紹介 自己紹介 ・sksat ・オタク.宇宙・計算機・百合などがすき. ・Twitter:@sksat_tty, GitHub:sksat ・VRChatでは 第1章
自己紹介 自己紹介 ・sksat ・オタク.宇宙・計算機・百合などがすき. ・Twitter:@sksat_tty, GitHub:sksat ・VRChatでは ・最近は人の形をしている 第1章
事の発端 第2章 長いので中略(は?) (時間があったらやります)
事の発端 第2章 長いので中略(は?) (時間があったらやります) 要約: ・色々あって僕がteleka.suを取得 ・lens.teleka.suみたいに曲名のサブドメインを曲の動画に飛ばすようにする
曲名サブドメイン 第3章 ・みんな大好きNginx
曲名サブドメイン 第3章 ・みんな大好きNginx
曲名サブドメイン 第3章 ・みんな大好きNginx ・”ポピ横の狂人”とかをどうするか
曲名サブドメイン 第3章 ・みんな大好きNginx ・”ポピ横の狂人”とかをどうするか ・popiyoko-no-kyoujin.teleka.su?
曲名サブドメイン 第3章 ・みんな大好きNginx ・”ポピ横の狂人”とかをどうするか ・popiyoko-no-kyoujin.teleka.su? ・ちょうどいいやつがいるじゃない
曲名サブドメイン 第3章 IDN: Internationalized Domain Name
曲名サブドメイン 第3章 IDN: Internationalized Domain Name 国際化ドメイン名
曲名サブドメイン 第3章 出典: https://www.nic.ad.jp/ja/dom/idn.html JPNIC ドメイン名/国際化ドメイン名 こっち.みんなとかできる
・こうなった 曲名サブドメイン 第3章
・こうなった ・ダルくね? 曲名サブドメイン 第3章
・こうなった ・ダルくね? ・Nginxのコンフィグを生成するシェルスクリプトでも書くか? 曲名サブドメイン 第3章
・こうなった ・ダルくね? ・Nginxのコンフィグを生成するシェルスクリプトでも書くか? 曲名サブドメイン 第3章
・新曲追加がDNSレコード追加だけでよくなった kuso-subdomain-adder 第3章
・新曲追加がDNSレコード追加だけでよくなった ・Cloudflareで管理しているのでCFのダッシュボードからいける kuso-subdomain-adder 第3章
・新曲追加がDNSレコード追加だけでよくなった ・Cloudflareで管理しているのでCFのダッシュボードからいける ・この権限はてれかすさんにあるべき kuso-subdomain-adder 第3章
・新曲追加がDNSレコード追加だけでよくなった ・Cloudflareで管理しているのでCFのダッシュボードからいける ・この権限はてれかすさんにあるべき→共用アカウントでメンバーを追加 kuso-subdomain-adder 第3章
・新曲追加がDNSレコード追加だけでよくなった ・Cloudflareで管理しているのでCFのダッシュボードからいける ・この権限はてれかすさんにあるべき→共用アカウントでメンバーを追加 ・それはそれとしてCNAMEとTXTを追加してもらうのも微妙かも? →専用のサービスを深夜テンションで作る kuso-subdomain-adder 第3章
・kuso-subdomain-adder ・A super-easy kuso subdomain utility for telekasu using kuso-domains-redirector
and Cloudflare API. ・サブドメインとターゲットURLを入れるとCNAMEとTXTをCFのAPI経由で追加 kuso-subdomain-adder 第3章
・kuso-subdomain-adder ・A super-easy kuso subdomain utility for telekasu using kuso-domains-redirector
and Cloudflare API. ・サブドメインとターゲットURLを入れるとCNAMEとTXTをCFのAPI経由で追加 kuso-subdomain-adder 第3章
・実装 ・フロントエンド: 素のHTML(APIリクエストはただのフォーム) ・バックエンド: Rust(actix-web) ・WIPだけどcloudflare-rsがあったのでかなり楽だった kuso-subdomain-adder 第3章
・デプロイ: $ docker-compose up -d ・GitHub Actionsでmasterのdocker imageをビルド→ghcr.ioにpush ・適宜pull/restartすればいい kuso-subdomain-adder
第3章
・認証は? kuso-subdomain-adder 第3章
・認証は? ・そんなものはない kuso-subdomain-adder 第3章
・認証は? ・そんなものはない ・やったことないしやりたくなさすぎる(そもそもWebっぽいのがはじめて) kuso-subdomain-adder 第3章
・認証は? ・そんなものはない ・やったことないしやりたくなさすぎる(そもそもWebっぽいのがはじめて) ・じゃあどうするか kuso-subdomain-adder 第3章
・認証は? ・そんなものはない ・やったことないしやりたくなさすぎる(そもそもWebっぽいのがはじめて) ・じゃあどうするか ・Cloudflare Access kuso-subdomain-adder 第3章
・Cloudflare Access ・すごい雑にいうと 「insecureオンプレ簡単に認証付けてインターネットに公開し太郎」 kuso-subdomain-adder 第3章
・Cloudflare Access ・すごい雑にいうと 「insecureオンプレ簡単に認証付けてインターネットに公開し太郎」 ・リモートワーク増加してるけどVPNとかやってらんないし微妙だよね ・これからはゼロトラストや!を何も考えずにできる kuso-subdomain-adder 第3章
・Cloudflare Access ・すごい雑にいうと 「insecureオンプレ簡単に認証付けてインターネットに公開し太郎」 ・リモートワーク増加してるけどVPNとかやってらんないし微妙だよね ・これからはゼロトラストや!を何も考えずにできる $ cloudflared tunnel --hostname
hoge.teleka.su --url http://internal-service kuso-subdomain-adder 第3章
・Cloudflare Access ・すごい雑にいうと 「insecureオンプレ簡単に認証付けてインターネットに公開し太郎」 ・リモートワーク増加してるけどVPNとかやってらんないし微妙だよね ・これからはゼロトラストや!を何も考えずにできる $ cloudflared tunnel --hostname
hoge.teleka.su --url http://internal-service kuso-subdomain-adder 第3章
・せっかくCIでdocker imageビルドしてんのにデプロイは手オペ? 運用 第4章
・せっかくCIでdocker imageビルドしてんのにデプロイは手オペ? ・CD(Continuous Delivery)したい~~~ 運用 第4章
・せっかくCIでdocker imageビルドしてんのにデプロイは手オペ? ・CD(Continuous Delivery)したい~~~ ・でもそのためにKubernetesクラスタ生やすのもな... 運用 第4章
・せっかくCIでdocker imageビルドしてんのにデプロイは手オペ? ・CD(Continuous Delivery)したい~~~ ・でもそのためにKubernetesクラスタ生やすのもな... ・要は更新を監視してpull/restartしてくれればいいんだよ 運用 第4章
・せっかくCIでdocker imageビルドしてんのにデプロイは手オペ? ・CD(Continuous Delivery)したい~~~ ・でもそのためにKubernetesクラスタ生やすのもな... ・要は更新を監視してpull/restartしてくれればいいんだよ →つくった 運用 第4章
・compose-cd: https://github.com/sksat/compose-cd 運用 第4章
・compose-cd: https://github.com/sksat/compose-cd ・systemd-timerで定期実行 ・リポジトリとイメージの更新を確認 ・適宜pull/restart ・各プロジェクトに.compode-cdを置くだけ ・Discordに通知 運用 第4章
・compose-cd: https://github.com/sksat/compose-cd ・systemd-timerで定期実行 ・リポジトリとイメージの更新を確認 ・適宜pull/restart ・各プロジェクトに.compode-cdを置くだけ ・Discordに通知 運用 第4章
・インシデント集 ・自室のインターネット接続が死亡→tunnelが切れる ・cloudflaredが別の場所で動いていて再起動時に動かし忘れる ・クソデカロックを取れず死亡 運用 第4章
・冗長化 運用 第4章
以降予備スライド
事の発端 第2章 ・丁度前回のVRC-LTぐらいの頃(2020年12月あたり)
事の発端 第2章 ・丁度前回のVRC-LTぐらいの頃(2020年12月あたり) ・ごく一部のVRChatterの間でクソドメインを取るのが流行る
事の発端 第2章 ・丁度前回のVRC-LTぐらいの頃(2020年12月あたり) ・ごく一部のVRChatterの間でクソドメインを取るのが流行る ・僕が元々怪しいレジストラでゴニョゴニョしてyohane.suを取っていた
事の発端 第2章 ・丁度前回のVRC-LTぐらいの頃(2020年12月あたり) ・ごく一部のVRChatterの間でクソドメインを取るのが流行る ・僕が元々怪しいレジストラでゴニョゴニョしてyohane.suを取っていた ・僕がgomika.su,@yanorei32がkakkoka.suを取る
事の発端 第2章 ・丁度前回のVRC-LTぐらいの頃(2020年12月あたり) ・ごく一部のVRChatterの間でクソドメインを取るのが流行る ・僕が元々怪しいレジストラでゴニョゴニョしてyohane.suを取っていた ・僕がgomika.su,@yanorei32がkakkoka.suを取る ・.su
事の発端 第2章
事の発端 第2章
None
事の発端 第2章
事の発端 第2章
事の発端 第2章 ・おやおやおや ・ちょっとまって ・クソドメインはクソオタクが取ればええねん
事の発端 第2章 ・おやおやおや ・ちょっとまって ・クソドメインはクソオタクが取ればええねん
事の発端 第2章 ・おやおやおや ・ちょっとまって ・クソドメインはクソオタクが取ればええねん
事の発端 第2章 というのが事の発端
余談
余談