[{"data":1,"prerenderedAt":899},["ShallowReactive",2],{"page-ja-\u002Fbuild-linux-docker":3},{"id":4,"title":5,"body":6,"description":16,"draft":891,"extension":892,"hero":893,"meta":894,"navigation":133,"path":895,"seo":896,"stem":897,"tags":893,"updatedAt":893,"__hash__":898},"content_ja\u002Fbuild-linux-docker.md","Linux向けビルド（Docker使用）",{"type":7,"value":8,"toc":863},"minimark",[9,13,17,22,26,42,45,50,61,65,76,80,90,94,98,153,157,225,229,233,236,244,248,277,284,294,298,304,381,384,387,427,430,470,474,508,512,516,522,528,531,537,542,558,561,565,581,584,587,638,642,727,731,796,800,814,818,838,842,859],[10,11,5],"h1",{"id":12},"linux向けビルドdocker使用",[14,15,16],"p",{},"Windows、macOS、LinuxからDocker経由でLinux向けのビルドを実行する方法",[18,19,21],"h2",{"id":20},"前提条件","📋 前提条件",[23,24,25],"h3",{"id":25},"すべてのプラットフォーム共通",[27,28,29,33,36,39],"ul",{},[30,31,32],"li",{},"Docker Desktop または Docker Engine",[30,34,35],{},"pnpm (v10.2.0以上)",[30,37,38],{},"8GB以上のRAM（16GB推奨）",[30,40,41],{},"20GB以上のディスク空き容量",[23,43,44],{"id":44},"プラットフォーム別",[46,47,49],"h4",{"id":48},"windows","Windows",[27,51,52,55,58],{},[30,53,54],{},"Windows 10\u002F11 (64-bit)",[30,56,57],{},"WSL 2（推奨）",[30,59,60],{},"PowerShell 5.1以上",[46,62,64],{"id":63},"macos","macOS",[27,66,67,70,73],{},[30,68,69],{},"macOS 10.15以上",[30,71,72],{},"Bash",[30,74,75],{},"Docker Desktop for Mac",[46,77,79],{"id":78},"linux","Linux",[27,81,82,85,88],{},[30,83,84],{},"64-bit Linux distribution",[30,86,87],{},"Docker Engine 20.10以上",[30,89,72],{},[18,91,93],{"id":92},"使用方法","🚀 使用方法",[23,95,97],{"id":96},"windows環境でのビルド","Windows環境でのビルド",[99,100,105],"pre",{"className":101,"code":102,"language":103,"meta":104,"style":104},"language-powershell shiki shiki-themes github-light github-dark","# プロジェクトルートで実行\npnpm run build:tauri:linux-x64    # x86_64 Linux\npnpm run build:tauri:linux-arm64  # ARM64 Linux\n\n# または直接スクリプトを実行\npwsh .\\scripts\\build-linux-docker.ps1 -Target x64\npwsh .\\scripts\\build-linux-docker.ps1 -Target arm64\n","powershell","",[106,107,108,116,122,128,135,141,147],"code",{"__ignoreMap":104},[109,110,113],"span",{"class":111,"line":112},"line",1,[109,114,115],{},"# プロジェクトルートで実行\n",[109,117,119],{"class":111,"line":118},2,[109,120,121],{},"pnpm run build:tauri:linux-x64    # x86_64 Linux\n",[109,123,125],{"class":111,"line":124},3,[109,126,127],{},"pnpm run build:tauri:linux-arm64  # ARM64 Linux\n",[109,129,131],{"class":111,"line":130},4,[109,132,134],{"emptyLinePlaceholder":133},true,"\n",[109,136,138],{"class":111,"line":137},5,[109,139,140],{},"# または直接スクリプトを実行\n",[109,142,144],{"class":111,"line":143},6,[109,145,146],{},"pwsh .\\scripts\\build-linux-docker.ps1 -Target x64\n",[109,148,150],{"class":111,"line":149},7,[109,151,152],{},"pwsh .\\scripts\\build-linux-docker.ps1 -Target arm64\n",[23,154,156],{"id":155},"macos-linux環境でのビルド","macOS \u002F Linux環境でのビルド",[99,158,162],{"className":159,"code":160,"language":161,"meta":104,"style":104},"language-bash shiki shiki-themes github-light github-dark","# プロジェクトルートで実行\nbash scripts\u002Fbuild-linux-docker.sh x64    # x86_64 Linux\nbash scripts\u002Fbuild-linux-docker.sh arm64  # ARM64 Linux\n\n# または app ディレクトリから\npnpm run build:tauri:linux-docker-x64\npnpm run build:tauri:linux-docker-arm64\n","bash",[106,163,164,169,184,196,200,205,216],{"__ignoreMap":104},[109,165,166],{"class":111,"line":112},[109,167,115],{"class":168},"sJ8bj",[109,170,171,174,178,181],{"class":111,"line":118},[109,172,161],{"class":173},"sScJk",[109,175,177],{"class":176},"sZZnC"," scripts\u002Fbuild-linux-docker.sh",[109,179,180],{"class":176}," x64",[109,182,183],{"class":168},"    # x86_64 Linux\n",[109,185,186,188,190,193],{"class":111,"line":124},[109,187,161],{"class":173},[109,189,177],{"class":176},[109,191,192],{"class":176}," arm64",[109,194,195],{"class":168},"  # ARM64 Linux\n",[109,197,198],{"class":111,"line":130},[109,199,134],{"emptyLinePlaceholder":133},[109,201,202],{"class":111,"line":137},[109,203,204],{"class":168},"# または app ディレクトリから\n",[109,206,207,210,213],{"class":111,"line":143},[109,208,209],{"class":173},"pnpm",[109,211,212],{"class":176}," run",[109,214,215],{"class":176}," build:tauri:linux-docker-x64\n",[109,217,218,220,222],{"class":111,"line":149},[109,219,209],{"class":173},[109,221,212],{"class":176},[109,223,224],{"class":176}," build:tauri:linux-docker-arm64\n",[18,226,228],{"id":227},"生成される成果物","📦 生成される成果物",[23,230,232],{"id":231},"デフォルトappimage無効","デフォルト（AppImage無効）",[14,234,235],{},"ビルド成果物は以下のディレクトリに生成されます：",[99,237,242],{"className":238,"code":240,"language":241,"meta":104},[239],"language-text","app\u002Fsrc-tauri\u002Ftarget\u002F\n  ├── x86_64-unknown-linux-gnu\u002Frelease\u002Fbundle\u002F\n  │   ├── deb\u002F           # Debian\u002FUbuntuパッケージ\n  │   └── rpm\u002F           # Red Hat\u002FFedoraパッケージ\n  │\n  └── aarch64-unknown-linux-gnu\u002Frelease\u002Fbundle\u002F\n      ├── deb\u002F\n      └── rpm\u002F\n","text",[106,243,240],{"__ignoreMap":104},[23,245,247],{"id":246},"appimage有効時","AppImage有効時",[99,249,251],{"className":101,"code":250,"language":103,"meta":104,"style":104},"# Windows\npwsh .\\scripts\\build-linux-docker.ps1 -Target x64 -IncludeAppImage\n\n# macOS\u002FLinux\nINCLUDE_APPIMAGE=true bash scripts\u002Fbuild-linux-docker.sh x64\n",[106,252,253,258,263,267,272],{"__ignoreMap":104},[109,254,255],{"class":111,"line":112},[109,256,257],{},"# Windows\n",[109,259,260],{"class":111,"line":118},[109,261,262],{},"pwsh .\\scripts\\build-linux-docker.ps1 -Target x64 -IncludeAppImage\n",[109,264,265],{"class":111,"line":124},[109,266,134],{"emptyLinePlaceholder":133},[109,268,269],{"class":111,"line":130},[109,270,271],{},"# macOS\u002FLinux\n",[109,273,274],{"class":111,"line":137},[109,275,276],{},"INCLUDE_APPIMAGE=true bash scripts\u002Fbuild-linux-docker.sh x64\n",[14,278,279,280,283],{},"上記に加えて ",[106,281,282],{},"appimage\u002F"," ディレクトリにAppImageが生成されます。",[285,286,287],"blockquote",{},[14,288,289,293],{},[290,291,292],"strong",{},"注意",": AppImageのビルドにはFUSEが必要で、Docker環境では制限があります。",[18,295,297],{"id":296},"️-ビルド設定のカスタマイズ","⚙️ ビルド設定のカスタマイズ",[14,299,300,303],{},[106,301,302],{},".env"," ファイルでビルド設定をカスタマイズできます：",[99,305,307],{"className":159,"code":306,"language":161,"meta":104,"style":104},"# Docker Build Settings\nBUILD_CPUS=4              # 使用するCPUコア数\nBUILD_MEMORY=8g           # メモリ制限\nCARGO_BUILD_JOBS=4        # Cargoの並列ジョブ数\nMAKEFLAGS=-j4             # Makeの並列度\nINCLUDE_APPIMAGE=false    # AppImageを含めるか\n",[106,308,309,314,330,343,355,368],{"__ignoreMap":104},[109,310,311],{"class":111,"line":112},[109,312,313],{"class":168},"# Docker Build Settings\n",[109,315,316,320,324,327],{"class":111,"line":118},[109,317,319],{"class":318},"sVt8B","BUILD_CPUS",[109,321,323],{"class":322},"szBVR","=",[109,325,326],{"class":176},"4",[109,328,329],{"class":168},"              # 使用するCPUコア数\n",[109,331,332,335,337,340],{"class":111,"line":124},[109,333,334],{"class":318},"BUILD_MEMORY",[109,336,323],{"class":322},[109,338,339],{"class":176},"8g",[109,341,342],{"class":168},"           # メモリ制限\n",[109,344,345,348,350,352],{"class":111,"line":130},[109,346,347],{"class":318},"CARGO_BUILD_JOBS",[109,349,323],{"class":322},[109,351,326],{"class":176},[109,353,354],{"class":168},"        # Cargoの並列ジョブ数\n",[109,356,357,360,362,365],{"class":111,"line":137},[109,358,359],{"class":318},"MAKEFLAGS",[109,361,323],{"class":322},[109,363,364],{"class":176},"-j4",[109,366,367],{"class":168},"             # Makeの並列度\n",[109,369,370,373,375,378],{"class":111,"line":143},[109,371,372],{"class":318},"INCLUDE_APPIMAGE",[109,374,323],{"class":322},[109,376,377],{"class":176},"false",[109,379,380],{"class":168},"    # AppImageを含めるか\n",[23,382,383],{"id":383},"パフォーマンス最適化",[46,385,386],{"id":386},"高性能マシン向け設定",[99,388,390],{"className":159,"code":389,"language":161,"meta":104,"style":104},"BUILD_CPUS=12\nBUILD_MEMORY=16g\nCARGO_BUILD_JOBS=12\nMAKEFLAGS=-j12\n",[106,391,392,401,410,418],{"__ignoreMap":104},[109,393,394,396,398],{"class":111,"line":112},[109,395,319],{"class":318},[109,397,323],{"class":322},[109,399,400],{"class":176},"12\n",[109,402,403,405,407],{"class":111,"line":118},[109,404,334],{"class":318},[109,406,323],{"class":322},[109,408,409],{"class":176},"16g\n",[109,411,412,414,416],{"class":111,"line":124},[109,413,347],{"class":318},[109,415,323],{"class":322},[109,417,400],{"class":176},[109,419,420,422,424],{"class":111,"line":130},[109,421,359],{"class":318},[109,423,323],{"class":322},[109,425,426],{"class":176},"-j12\n",[46,428,429],{"id":429},"一般的なマシン向け設定",[99,431,433],{"className":159,"code":432,"language":161,"meta":104,"style":104},"BUILD_CPUS=4\nBUILD_MEMORY=8g\nCARGO_BUILD_JOBS=4\nMAKEFLAGS=-j4\n",[106,434,435,444,453,461],{"__ignoreMap":104},[109,436,437,439,441],{"class":111,"line":112},[109,438,319],{"class":318},[109,440,323],{"class":322},[109,442,443],{"class":176},"4\n",[109,445,446,448,450],{"class":111,"line":118},[109,447,334],{"class":318},[109,449,323],{"class":322},[109,451,452],{"class":176},"8g\n",[109,454,455,457,459],{"class":111,"line":124},[109,456,347],{"class":318},[109,458,323],{"class":322},[109,460,443],{"class":176},[109,462,463,465,467],{"class":111,"line":130},[109,464,359],{"class":318},[109,466,323],{"class":322},[109,468,469],{"class":176},"-j4\n",[18,471,473],{"id":472},"️-内部動作","⚙️ 内部動作",[475,476,477,491,505],"ol",{},[30,478,479,480],{},"Dockerイメージの構築",[27,481,482,485,488],{},[30,483,484],{},"Rust + Debian Bookworm ベース",[30,486,487],{},"Tauri の依存関係（WebKit2GTK、GTK3等）をインストール",[30,489,490],{},"Node.js と pnpm をインストール",[30,492,493,494],{},"Docker コンテナ内で Tauri ビルドを実行",[27,495,496,499,502],{},[30,497,498],{},"プロジェクトディレクトリをマウント",[30,500,501],{},"ターゲットアーキテクチャを指定してビルド",[30,503,504],{},"Dockerボリュームを使用したキャッシュ管理",[30,506,507],{},"成果物をホスト側のディレクトリに出力",[18,509,511],{"id":510},"トラブルシューティング","🔧 トラブルシューティング",[23,513,515],{"id":514},"dockerが見つからないwindows","Dockerが見つからない（Windows）",[99,517,520],{"className":518,"code":519,"language":241,"meta":104},[239],"❌ エラー: Docker Desktop が起動していません。\n",[106,521,519],{"__ignoreMap":104},[14,523,524,527],{},[290,525,526],{},"解決方法",": Docker Desktopを起動してから、再度実行してください。",[23,529,530],{"id":530},"メモリ不足",[14,532,533,536],{},[290,534,535],{},"症状",": ビルド中にメモリエラー",[14,538,539,541],{},[290,540,526],{},":",[475,543,544,549,552],{},[30,545,546,548],{},[106,547,302],{},"でメモリ制限を増やす",[30,550,551],{},"Docker Desktopのリソース設定でメモリを増やす（Settings → Resources → Memory）",[30,553,554,555,557],{},"並列ビルド数を減らす（",[106,556,319],{},"を減らす）",[23,559,560],{"id":560},"ビルドが遅い",[14,562,563,541],{},[290,564,526],{},[27,566,567,572,575,578],{},[30,568,569,571],{},[106,570,302],{},"で並列度を増やす",[30,573,574],{},"Docker Desktopのリソース（CPU、メモリ）を増やす",[30,576,577],{},"SSDを使用する",[30,579,580],{},"キャッシュボリュームを活用する",[23,582,583],{"id":583},"ビルドキャッシュのクリア",[46,585,49],{"id":586},"windows-1",[99,588,590],{"className":101,"code":589,"language":103,"meta":104,"style":104},"# x86_64キャッシュをクリア\ndocker volume rm dropwebp-cargo-cache-linux-amd64\ndocker volume rm dropwebp-pnpm-cache-linux-amd64\ndocker volume rm dropwebp-target-cache-linux-amd64\n\n# ARM64キャッシュをクリア\ndocker volume rm dropwebp-cargo-cache-linux-arm64\ndocker volume rm dropwebp-pnpm-cache-linux-arm64\ndocker volume rm dropwebp-target-cache-linux-arm64\n",[106,591,592,597,602,607,612,616,621,626,632],{"__ignoreMap":104},[109,593,594],{"class":111,"line":112},[109,595,596],{},"# x86_64キャッシュをクリア\n",[109,598,599],{"class":111,"line":118},[109,600,601],{},"docker volume rm dropwebp-cargo-cache-linux-amd64\n",[109,603,604],{"class":111,"line":124},[109,605,606],{},"docker volume rm dropwebp-pnpm-cache-linux-amd64\n",[109,608,609],{"class":111,"line":130},[109,610,611],{},"docker volume rm dropwebp-target-cache-linux-amd64\n",[109,613,614],{"class":111,"line":137},[109,615,134],{"emptyLinePlaceholder":133},[109,617,618],{"class":111,"line":143},[109,619,620],{},"# ARM64キャッシュをクリア\n",[109,622,623],{"class":111,"line":149},[109,624,625],{},"docker volume rm dropwebp-cargo-cache-linux-arm64\n",[109,627,629],{"class":111,"line":628},8,[109,630,631],{},"docker volume rm dropwebp-pnpm-cache-linux-arm64\n",[109,633,635],{"class":111,"line":634},9,[109,636,637],{},"docker volume rm dropwebp-target-cache-linux-arm64\n",[46,639,641],{"id":640},"macos-linux","macOS \u002F Linux",[99,643,644],{"className":159,"code":589,"language":161,"meta":104,"style":104},[106,645,646,650,664,675,686,690,694,705,716],{"__ignoreMap":104},[109,647,648],{"class":111,"line":112},[109,649,596],{"class":168},[109,651,652,655,658,661],{"class":111,"line":118},[109,653,654],{"class":173},"docker",[109,656,657],{"class":176}," volume",[109,659,660],{"class":176}," rm",[109,662,663],{"class":176}," dropwebp-cargo-cache-linux-amd64\n",[109,665,666,668,670,672],{"class":111,"line":124},[109,667,654],{"class":173},[109,669,657],{"class":176},[109,671,660],{"class":176},[109,673,674],{"class":176}," dropwebp-pnpm-cache-linux-amd64\n",[109,676,677,679,681,683],{"class":111,"line":130},[109,678,654],{"class":173},[109,680,657],{"class":176},[109,682,660],{"class":176},[109,684,685],{"class":176}," dropwebp-target-cache-linux-amd64\n",[109,687,688],{"class":111,"line":137},[109,689,134],{"emptyLinePlaceholder":133},[109,691,692],{"class":111,"line":143},[109,693,620],{"class":168},[109,695,696,698,700,702],{"class":111,"line":149},[109,697,654],{"class":173},[109,699,657],{"class":176},[109,701,660],{"class":176},[109,703,704],{"class":176}," dropwebp-cargo-cache-linux-arm64\n",[109,706,707,709,711,713],{"class":111,"line":628},[109,708,654],{"class":173},[109,710,657],{"class":176},[109,712,660],{"class":176},[109,714,715],{"class":176}," dropwebp-pnpm-cache-linux-arm64\n",[109,717,718,720,722,724],{"class":111,"line":634},[109,719,654],{"class":173},[109,721,657],{"class":176},[109,723,660],{"class":176},[109,725,726],{"class":176}," dropwebp-target-cache-linux-arm64\n",[23,728,730],{"id":729},"docker-イメージのリビルド","Docker イメージのリビルド",[99,732,734],{"className":159,"code":733,"language":161,"meta":104,"style":104},"# x86_64用\ndocker build -f Dockerfile.linux-x64 -t dropwebp-linux-x64-builder --no-cache .\n\n# ARM64用\ndocker build -f Dockerfile.linux-arm64 -t dropwebp-linux-arm64-builder --no-cache .\n",[106,735,736,741,767,771,776],{"__ignoreMap":104},[109,737,738],{"class":111,"line":112},[109,739,740],{"class":168},"# x86_64用\n",[109,742,743,745,748,752,755,758,761,764],{"class":111,"line":118},[109,744,654],{"class":173},[109,746,747],{"class":176}," build",[109,749,751],{"class":750},"sj4cs"," -f",[109,753,754],{"class":176}," Dockerfile.linux-x64",[109,756,757],{"class":750}," -t",[109,759,760],{"class":176}," dropwebp-linux-x64-builder",[109,762,763],{"class":750}," --no-cache",[109,765,766],{"class":176}," .\n",[109,768,769],{"class":111,"line":124},[109,770,134],{"emptyLinePlaceholder":133},[109,772,773],{"class":111,"line":130},[109,774,775],{"class":168},"# ARM64用\n",[109,777,778,780,782,784,787,789,792,794],{"class":111,"line":137},[109,779,654],{"class":173},[109,781,747],{"class":176},[109,783,751],{"class":750},[109,785,786],{"class":176}," Dockerfile.linux-arm64",[109,788,757],{"class":750},[109,790,791],{"class":176}," dropwebp-linux-arm64-builder",[109,793,763],{"class":750},[109,795,766],{"class":176},[18,797,799],{"id":798},"注意事項","📝 注意事項",[27,801,802,805,808,811],{},[30,803,804],{},"初回ビルドは Docker イメージのビルドとダウンロードで時間がかかります（20-40分程度）",[30,806,807],{},"2回目以降はキャッシュが利用されるため高速です（5-15分程度）",[30,809,810],{},"ARM64 向けビルドは x86_64 向けよりも時間がかかる場合があります",[30,812,813],{},"Windows環境ではWSL 2を使用することを推奨します",[18,815,817],{"id":816},"推奨配布形式","🎯 推奨配布形式",[27,819,820,826,832],{},[30,821,822,825],{},[290,823,824],{},".deb",": Debian\u002FUbuntu系ユーザー向け（デフォルトで生成）",[30,827,828,831],{},[290,829,830],{},".rpm",": Red Hat\u002FFedora系ユーザー向け（デフォルトで生成）",[30,833,834,837],{},[290,835,836],{},"AppImage",": 配布推奨（すべてのLinuxディストリビューションで動作）※オプション",[18,839,841],{"id":840},"関連ドキュメント","📚 関連ドキュメント",[27,843,844,852],{},[30,845,846,851],{},[847,848,850],"a",{"href":849},"..\u002F..\u002F..\u002FDOCKER_BUILD","ルートディレクトリのDOCKER_BUILD.md"," - 全プラットフォーム対応の詳細ガイド",[30,853,854,858],{},[847,855,857],{"href":856},"..\u002F..\u002F..\u002FDOCKER_BUILD_WINDOWS","ルートディレクトリのDOCKER_BUILD_WINDOWS.md"," - Windows固有の詳細手順",[860,861,862],"style",{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}",{"title":104,"searchDepth":118,"depth":118,"links":864},[865,869,873,877,880,881,888,889,890],{"id":20,"depth":118,"text":21,"children":866},[867,868],{"id":25,"depth":124,"text":25},{"id":44,"depth":124,"text":44},{"id":92,"depth":118,"text":93,"children":870},[871,872],{"id":96,"depth":124,"text":97},{"id":155,"depth":124,"text":156},{"id":227,"depth":118,"text":228,"children":874},[875,876],{"id":231,"depth":124,"text":232},{"id":246,"depth":124,"text":247},{"id":296,"depth":118,"text":297,"children":878},[879],{"id":383,"depth":124,"text":383},{"id":472,"depth":118,"text":473},{"id":510,"depth":118,"text":511,"children":882},[883,884,885,886,887],{"id":514,"depth":124,"text":515},{"id":530,"depth":124,"text":530},{"id":560,"depth":124,"text":560},{"id":583,"depth":124,"text":583},{"id":729,"depth":124,"text":730},{"id":798,"depth":118,"text":799},{"id":816,"depth":118,"text":817},{"id":840,"depth":118,"text":841},false,"md",null,{},"\u002Fbuild-linux-docker",{"title":5,"description":16},"build-linux-docker","XPsjsz5121lR8H1W4l2M7JnEmRKVYGnSts6IshwsI-k",1780198564531]