chore: release MediaStationGo v0.0.31

This commit is contained in:
ShukeBta
2026-05-30 12:07:35 +08:00
parent b9b7b7052a
commit 7e83047fdb
5 changed files with 64 additions and 25 deletions
+12 -12
View File
@@ -238,7 +238,7 @@ mkdir -p data cache media downloads
```bash
cat > .env <<'EOF'
# 固定版本;需要升级时改成新的 MediaStationGo-vX.Y.Z 后执行 docker compose pull && docker compose up -d
MEDIASTATION_IMAGE_TAG=MediaStationGo-v0.0.30
MEDIASTATION_IMAGE_TAG=MediaStationGo-v0.0.31
MEDIASTATION_HTTP_PORT=18080
# 程序数据和缓存建议放在 MediaStationGo 部署目录下,便于备份和迁移。
@@ -307,7 +307,7 @@ vim docker-compose.yml
#
# 镜像版本:
# 默认拉取 latest;如需固定版本,创建 .env 并写入:
# MEDIASTATION_IMAGE_TAG=MediaStationGo-v0.0.30
# MEDIASTATION_IMAGE_TAG=MediaStationGo-v0.0.31
#
# 路径映射总览:
# /data 程序数据目录。保存 SQLite 数据库、JWT secret、系统配置等,必须持久化。
@@ -516,7 +516,7 @@ docker compose up -d
```bash
cat > .env <<'EOF'
MEDIASTATION_IMAGE_TAG=MediaStationGo-v0.0.30
MEDIASTATION_IMAGE_TAG=MediaStationGo-v0.0.31
MEDIASTATION_HTTP_PORT=18080
MEDIASTATION_DATA_DIR=./data
MEDIASTATION_CACHE_DIR=./cache
@@ -779,26 +779,26 @@ cd MediaStationGo
| 平台 | 包名示例 |
| --- | --- |
| Linux x86_64 | `MediaStationGo-v0.0.30-linux-amd64.tar.gz` |
| Linux ARM64 | `MediaStationGo-v0.0.30-linux-arm64.tar.gz` |
| Windows x86_64 | `MediaStationGo-v0.0.30-windows-amd64.zip` |
| macOS Intel | `MediaStationGo-v0.0.30-darwin-amd64.tar.gz` |
| macOS Apple Silicon | `MediaStationGo-v0.0.30-darwin-arm64.tar.gz` |
| Linux x86_64 | `MediaStationGo-v0.0.31-linux-amd64.tar.gz` |
| Linux ARM64 | `MediaStationGo-v0.0.31-linux-arm64.tar.gz` |
| Windows x86_64 | `MediaStationGo-v0.0.31-windows-amd64.zip` |
| macOS Intel | `MediaStationGo-v0.0.31-darwin-amd64.tar.gz` |
| macOS Apple Silicon | `MediaStationGo-v0.0.31-darwin-arm64.tar.gz` |
部署步骤:
```bash
# Linux 示例
tar -xzf MediaStationGo-v0.0.30-linux-amd64.tar.gz
cd MediaStationGo-v0.0.30-linux-amd64
tar -xzf MediaStationGo-v0.0.31-linux-amd64.tar.gz
cd MediaStationGo-v0.0.31-linux-amd64
MEDIASTATION_APP_PORT=18080 ./mediastation-go
```
Windows:
```powershell
Expand-Archive .\MediaStationGo-v0.0.30-windows-amd64.zip
cd .\MediaStationGo-v0.0.30-windows-amd64
Expand-Archive .\MediaStationGo-v0.0.31-windows-amd64.zip
cd .\MediaStationGo-v0.0.31-windows-amd64
$env:MEDIASTATION_APP_PORT = "18080"
.\mediastation-go.exe
```
+11 -11
View File
@@ -235,7 +235,7 @@ mkdir -p data cache media downloads
```bash
cat > .env <<'EOF'
MEDIASTATION_IMAGE_TAG=MediaStationGo-v0.0.30
MEDIASTATION_IMAGE_TAG=MediaStationGo-v0.0.31
MEDIASTATION_HTTP_PORT=18080
MEDIASTATION_DATA_DIR=./data
MEDIASTATION_CACHE_DIR=./cache
@@ -344,7 +344,7 @@ For production, pin a specific release tag instead of using `latest`. Recommende
```bash
cat > .env <<'EOF'
MEDIASTATION_IMAGE_TAG=MediaStationGo-v0.0.30
MEDIASTATION_IMAGE_TAG=MediaStationGo-v0.0.31
MEDIASTATION_HTTP_PORT=18080
MEDIASTATION_DATA_DIR=./data
MEDIASTATION_CACHE_DIR=./cache
@@ -593,25 +593,25 @@ Each release provides multi-platform archives:
| Platform | Package example |
| --- | --- |
| Linux x86_64 | `MediaStationGo-v0.0.30-linux-amd64.tar.gz` |
| Linux ARM64 | `MediaStationGo-v0.0.30-linux-arm64.tar.gz` |
| Windows x86_64 | `MediaStationGo-v0.0.30-windows-amd64.zip` |
| macOS Intel | `MediaStationGo-v0.0.30-darwin-amd64.tar.gz` |
| macOS Apple Silicon | `MediaStationGo-v0.0.30-darwin-arm64.tar.gz` |
| Linux x86_64 | `MediaStationGo-v0.0.31-linux-amd64.tar.gz` |
| Linux ARM64 | `MediaStationGo-v0.0.31-linux-arm64.tar.gz` |
| Windows x86_64 | `MediaStationGo-v0.0.31-windows-amd64.zip` |
| macOS Intel | `MediaStationGo-v0.0.31-darwin-amd64.tar.gz` |
| macOS Apple Silicon | `MediaStationGo-v0.0.31-darwin-arm64.tar.gz` |
Linux example:
```bash
tar -xzf MediaStationGo-v0.0.30-linux-amd64.tar.gz
cd MediaStationGo-v0.0.30-linux-amd64
tar -xzf MediaStationGo-v0.0.31-linux-amd64.tar.gz
cd MediaStationGo-v0.0.31-linux-amd64
MEDIASTATION_APP_PORT=18080 ./mediastation-go
```
Windows example:
```powershell
Expand-Archive .\MediaStationGo-v0.0.30-windows-amd64.zip
cd .\MediaStationGo-v0.0.30-windows-amd64
Expand-Archive .\MediaStationGo-v0.0.31-windows-amd64.zip
cd .\MediaStationGo-v0.0.31-windows-amd64
$env:MEDIASTATION_APP_PORT = "18080"
.\mediastation-go.exe
```
+1 -1
View File
@@ -17,7 +17,7 @@
#
# 镜像版本:
# 默认拉取 latest;如需固定版本,创建 .env 并写入:
# MEDIASTATION_IMAGE_TAG=MediaStationGo-v0.0.30
# MEDIASTATION_IMAGE_TAG=MediaStationGo-v0.0.31
#
# 路径映射总览:
# /data 程序数据目录。保存 SQLite 数据库、JWT secret、系统配置等,必须持久化。
+1 -1
View File
@@ -1,4 +1,4 @@
//go:build !unix
//go:build !unix && !windows
package service
+39
View File
@@ -0,0 +1,39 @@
//go:build windows
package service
import (
"fmt"
"golang.org/x/sys/windows"
)
func fileIdentity(path string) (string, bool) {
ptr, err := windows.UTF16PtrFromString(path)
if err != nil {
return "", false
}
handle, err := windows.CreateFile(
ptr,
windows.GENERIC_READ,
windows.FILE_SHARE_READ|windows.FILE_SHARE_WRITE|windows.FILE_SHARE_DELETE,
nil,
windows.OPEN_EXISTING,
windows.FILE_FLAG_BACKUP_SEMANTICS,
0,
)
if err != nil {
return "", false
}
defer windows.CloseHandle(handle)
var info windows.ByHandleFileInformation
if err := windows.GetFileInformationByHandle(handle, &info); err != nil {
return "", false
}
if info.NumberOfLinks < 2 {
return "", false
}
fileIndex := (uint64(info.FileIndexHigh) << 32) | uint64(info.FileIndexLow)
return fmt.Sprintf("%d:%d", info.VolumeSerialNumber, fileIndex), true
}