「.NET 8 for Dockerの特殊ディレクトリのパス」の版間の差分
Administrator (トーク | 投稿記録) ページの作成:「 <source lang="docker"> FROM mcr.microsoft.com/dotnet/runtime:8.0 AS base WORKDIR /app </source> {|class="wikitable sortable" style="overflow:auto" |+ ! SpecialFolder !! .NET for Linux |- | Desktop || |- | Programs || |- | MyDocuments || |- | MyDocuments || |- | Favorites || |- | Startup || |- | Recent || |- | SendTo || |- | StartMenu || |- | MyMusic || |- | MyVideos || |- | DesktopDirectory || |- | MyComputer || |- | NetworkShortcuts || |- | Fonts |…」 |
Administrator (トーク | 投稿記録) 編集の要約なし |
||
| 1行目: | 1行目: | ||
== ベースイメージ == | |||
<source lang="docker"> | <source lang="docker"> | ||
FROM mcr.microsoft.com/dotnet/runtime:8.0 AS base | FROM mcr.microsoft.com/dotnet/runtime:8.0 AS base | ||
| 6行目: | 6行目: | ||
</source> | </source> | ||
.NET 6や.NET 7は試していません。 | |||
== 結果 == | |||
{|class="wikitable sortable" style="overflow:auto" | {|class="wikitable sortable" style="overflow:auto" | ||
|+ | |+ | ||
2024年9月20日 (金) 05:09時点における版
ベースイメージ
FROM mcr.microsoft.com/dotnet/runtime:8.0 AS base
WORKDIR /app
.NET 6や.NET 7は試していません。
結果
| SpecialFolder | .NET for Linux |
|---|---|
| Desktop | |
| Programs | |
| MyDocuments | |
| MyDocuments | |
| Favorites | |
| Startup | |
| Recent | |
| SendTo | |
| StartMenu | |
| MyMusic | |
| MyVideos | |
| DesktopDirectory | |
| MyComputer | |
| NetworkShortcuts | |
| Fonts | |
| Templates | |
| CommonStartMenu | |
| CommonPrograms | |
| CommonStartup | |
| CommonDesktopDirectory | |
| ApplicationData | |
| PrinterShortcuts | |
| LocalApplicationData | |
| InternetCache | |
| Cookies | |
| History | |
| CommonApplicationData | /usr/share |
| Windows | |
| System | |
| ProgramFiles | |
| MyPictures | |
| UserProfile | /root |
| SystemX86 | |
| ProgramFilesX86 | |
| CommonProgramFiles | |
| CommonProgramFilesX86 | |
| CommonTemplates | |
| CommonDocuments | |
| CommonAdminTools | |
| AdminTools | |
| CommonMusic | |
| CommonPictures | |
| CommonVideos | |
| Resources | |
| LocalizedResources | |
| CommonOemLinks | |
| CDBurning |
解説
docker版ではCommonApplicationDataとUserProfileしか返ってきません。
- dockerイメージ上にファイルは保存するな
- docker-composeでボリュームを明示してそこに保存しろ
ということでしょう。
コード
foreach (var folder in Enum.GetValues(typeof(Environment.SpecialFolder)))
{
var path = Environment.GetFolderPath((Environment.SpecialFolder)folder);
Console.WriteLine($"{folder} => {path}");
}