YAML↔JSON変換ツール(無料・登録不要)
登録不要 無料 ブラウザ完結
YAML↔JSON を双方向リアルタイム変換 — ブラウザ完結でサーバー送信なし。Kubernetes manifest・Docker Compose・GitHub Actions などの設定ファイル変換に最適。インデント・圧縮・バリデーション・ダウンロード対応。
入力待ち
YAML 入力 0文字
ここにファイルをドロップ
JSON 出力
0行 出力: 0行
変換履歴(直近5件)
- 変換方向を選択 — 上部の「YAML→JSON」「JSON→YAML」ボタンで切替
- テキストを貼り付け — 左エディタに入力するか .yaml / .yml / .json ファイルをドラッグ&ドロップ
- 出力設定を調整 — インデント幅(2/4/compact)・YAML引用符スタイルを選択
- 変換結果を確認 — 右パネルにリアルタイムで変換結果が表示。エラーがある場合は赤色でメッセージを表示
- コピーまたはダウンロード — ワンクリックコピーまたは .yaml / .json でダウンロード
ヒント: 変換履歴は LocalStorage に自動保存。「履歴」ボタンから直近5件を再呼び出しできます。
YAMLとJSONはどちらもデータを表現するフォーマットですが、用途と特性が異なります。
| 項目 | YAML | JSON |
|---|---|---|
| 可読性 | 高い(インデントで階層表現) | 中程度(波括弧・引用符が多い) |
| コメント | 対応(# で記述) | 非対応 |
| ファイルサイズ | やや小さい | やや大きい |
| パース速度 | やや遅い | 高速 |
| 主な用途 | 設定ファイル・manifest・CI/CD | API レスポンス・データ交換 |
| 代表サービス | Kubernetes・Docker Compose・GitHub Actions | REST API・package.json・tsconfig.json |
結論: 人が手で編集する設定ファイルは YAML、プログラムが処理するデータ交換には JSON が適しています。
Kubernetes のリソース定義は通常 YAML 形式で記述しますが、API レスポンスや Helm の処理では JSON が使われます。
変換が必要になる主なシーン
kubectl get deployment my-app -o jsonで取得した JSON → YAML に変換して GitOps リポジトリに保存- JSON 形式のカスタムリソース定義(CRD)を YAML に変換してチームに共有
- Terraform の Kubernetes プロバイダーが出力する JSON → YAML manifest に変換
- Argo CD / Flux の設定を JSON API から YAML に変換して管理
サンプル: Deployment YAML
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app
namespace: default
spec:
replicas: 3
selector:
matchLabels:
app: my-app
template:
spec:
containers:
- name: app
image: nginx:latest
ports:
- containerPort: 80
上記をそのままツールに貼り付けると、対応する JSON に変換できます。
Docker Compose は compose.yaml(または docker-compose.yml)を使ってマルチコンテナアプリを定義します。
変換が役立つシーン
- Compose YAML を JSON に変換して Portainer API や AWS ECS Task Definition に利用
- JSON 形式の ECS Task Definition を Compose YAML に変換してローカル開発環境を再現
- 設定ファイルの構造をプログラムで検証する前処理として JSON 化
サンプル: compose.yaml
services:
web:
image: nginx:alpine
ports:
- "80:80"
volumes:
- ./html:/usr/share/nginx/html
db:
image: postgres:16
environment:
POSTGRES_PASSWORD: secret
volumes:
- pgdata:/var/lib/postgresql/data
volumes:
pgdata:
GitHub Actions
.github/workflows/*.yml でCI/CDパイプラインを定義。JSON APIから取得した設定をYAMLに変換して管理
Ansible
Playbookはすべてインベントリ含めYAML形式。設定変数のJSONとの相互変換が頻出
OpenAPI / Swagger
APIスキーマはYAML/JSONどちらでも記述可能。ツール間の連携でフォーマット変換が必要になる
Helm Charts
values.yaml を JSON スキーマでバリデーション。YAML→JSONへの変換でスキーマ検証に活用
- Q YAMLとJSONの違いは何ですか?
- A YAMLは人間が読みやすい構文を持ち、インデントで階層を表現します。コメントが書けるため設定ファイルに多用されます。JSONはJavaScriptとの親和性が高く、APIのデータ形式として広く使われます。YAMLはJSONのスーパーセットであり、有効なJSONはYAMLとしても有効です。
- Q 入力したデータはサーバーに送信されますか?
- A いいえ。このツールはすべてブラウザ内で処理します。入力した設定ファイルや機密情報はサーバーに一切送信されません。Kubernetes の Secret や Docker の環境変数ファイルも安全に変換できます。
- Q Kubernetesのmanifestを変換できますか?
- A はい。KubernetesのYAML manifest(Deployment・Service・ConfigMap・Secret等)をJSONへ変換できます。逆にJSON形式のmanifestをYAMLに変換してGitOpsリポジトリに保存する用途にも対応しています。
- Q 複数ドキュメントのYAML(---区切り)は変換できますか?
- A 現在は単一ドキュメントのYAMLに対応しています。複数の---区切りドキュメントは最初のドキュメントのみ変換されます。複数ドキュメントを変換する場合は個別に貼り付けてください。
- Q YAMLのコメントはJSONに変換されますか?
- A いいえ。YAMLのコメント(#で始まる行)はJSON仕様上サポートされていないため、変換時に除去されます。JSON→YAML変換でもコメントは追加されません。
- Q ファイルを直接読み込むことはできますか?
- A はい。「ファイルを開く」ボタンから.yaml / .yml / .jsonファイルを選択するか、エディタにドラッグ&ドロップで直接読み込めます。変換結果はダウンロードボタンでファイルとして保存できます。