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
WSLでreactの開発環境作った話
Search
S-cubism
September 26, 2018
Technology
0
710
WSLでreactの開発環境作った話
S-cubism
September 26, 2018
Tweet
Share
More Decks by S-cubism
See All by S-cubism
未経験者がAndroidアプリをリリースするまで
scubism
0
140
scubism_LT_20180223_細田謙二_イベントソーシング
scubism
0
160
REVEAL.JSをちょっとだけ使ってみた
scubism
0
270
忙しい人のための仮想通貨
scubism
0
120
サーバ作業の注意コマンド
scubism
0
140
最近勉強してること、次にやりたいこと
scubism
0
110
FOOD TECH
scubism
0
70
Firebase(Realtime Database)について
scubism
0
130
複数会社複数リポジトリでのソース管理
scubism
0
100
Other Decks in Technology
See All in Technology
戰略轉變:從建構 AI 代理人到發展可擴展的技能生態系統
appleboy
0
170
20251203_AIxIoTビジネス共創ラボ_第4回勉強会_BP山崎.pdf
iotcomjpadmin
0
170
歴史から学ぶ、Goのメモリ管理基礎
logica0419
2
100
技術選定、下から見るか?横から見るか?
masakiokuda
0
170
Introduce marp-ai-slide-generator
itarutomy
0
170
AWSインフルエンサーへの道 / load of AWS Influencer
whisaiyo
0
240
202512_AIoT.pdf
iotcomjpadmin
0
180
Oracle Cloud Infrastructure:2025年12月度サービス・アップデート
oracle4engineer
PRO
0
160
Snowflake Industry Days 2025 Nowcast
takumimukaiyama
0
160
AIエージェントを5分で一気におさらい!AIエージェント「構築」元年に備えよう
yakumo
1
130
1万人を変え日本を変える!!多層構造型ふりかえりの大規模組織変革 / 20260108 Kazuki Mori
shift_evolve
PRO
3
410
re:Invent2025 セッションレポ ~Spec-driven development with Kiro~
nrinetcom
PRO
2
160
Featured
See All Featured
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
130
Docker and Python
trallard
47
3.7k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
140
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
0
26
Navigating Team Friction
lara
191
16k
HDC tutorial
michielstock
1
290
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
31
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
43
Claude Code のすすめ
schroneko
67
210k
エンジニアに許された特別な時間の終わり
watany
106
220k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
65
35k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
120
Transcript
WSLで reactの開発環境作った話 テクノロジーアーキテクト本部 松島一樹
Windowsでのreact開発環境について
React開発方法 • 仮想マシンを立てる(virtualbox) • Vagrant+ansibleで簡単に作成できる • シンボリックリンクがあるため共有フォルダが使えない (ホストのエディタから編集できない) • NodeをWindowsに入れる
• 無難そう • Windows Subsystem for Linuxを使う
WSLを使った理由 • Linuxのほうが使い慣れていた • Nodeのバージョン管理ツール(nvm)が使える • Windowsと相互運用しやすそう
Windows Subsystem for Linux ざっくり入門
WSLとは • Windows Subsystem for Linux(通称WSL) • Linux ELF64バイナリの実行環境
仕組み ユーザモード カーネルモード Linux syscall 変換を行う NT syscall [1]画像出典 WSL
System Calls (https://blogs.msdn.microsoft.com/wsl/2016/06/08/wsl-system-calls/)
WSL機能概要 • バックグラウンドプロセスの実行(一部) • 仮想的なLinuxのファイルシステム • ネットワーク通信 • シリアル通信のサポート
ファイルシステム • VolFs • VFSのほとんどの機能をサポート • “/”以下が格納 • Windowsのアプリケーションから触れない(ほうがいい) •
DrvFS • Windowsのファイルと相互運用 • Linuxのアクセス権限は利用できない ver1803からできるようになった • I/Oが遅いといわれている[1] [1] Microsoft、WSLのI/Oパフォーマンス改善に取り組み https://news.mynavi.jp/article/20180815-676572/
対応するディストリビューション など
つかいかた
bash起動方法 • アプリストアのアイコンをクリックする • “ファイル名を指定して実行”で”wsl”
特定のコマンドを実行する • コマンドプロンプトで • Powershellで • Explorerで コマンド 引数
React開発環境
環境構成 React project /mnt/c/Users/user/project/ C:¥Users¥user¥project Visual Studio code 編集 WSL
Ubuntu 18.04 Node 8.11.4 実行 node起動 Debugスクリプトでwslのフラグを立 てるとwslでnodeを起動してくれる ブラウザ localhost:3000 • nodeの実行はwsl上で • プロジェクトのファイルはDrvfsに置く
よかった点 • Linuxでの構築方法を流用できる • エディタ(vscode)から制御できる • ネットワークの設定が不要
悪かった点 • 仮想マシンと比べてビルドが遅い 参考: WSL vs VM for 開発作業(https://qiita.com/satoru_takeuchi/items/a54812806bba0eb48f02) •
コマンドを誤るとwindowsの動作にも影響が出てしまう • 通称fork爆弾.windowsがフリーズする • userのフォルダも削除される? 参考:Windows 10 WSLで『rm -rf /』を実行(https://news.mynavi.jp/article/dont_run_on_linux-3/) $ :(){ :|:& };: $ sudo rm –rf / --no-preserve-root
まとめ Linuxのバイナリを実行できる 動作は遅い 動作確認にはよさそう