步驟很簡單:
- 新增使用者
1sudo adduser exfast - 給予管理員權限
1admin usermod -aG sudo exfast
興趣使然的軟體工程師,擅長 Exception。
步驟很簡單:
1 |
sudo adduser exfast |
1 |
admin usermod -aG sudo exfast |
最近把 exfast.Helper 移植到 Linux 上面,發現錯誤 LOG 常常噴 One or more errors occurred. (Too many open files in system)
,查了一下發現原來 Linux 有限制檔案開啟的數量。
最近想部屬應用程式到 Linux 上玩玩,碰到了時區轉換的問題,在 Window 中可以使用
1 |
TimeZoneInfo.FindSystemTimeZoneById("Taipei Standard Time") |
取得台灣時區,放到 Linux 卻噴了錯誤給我看
1 2 3 4 5 |
warn: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[35] No XML encryptor configured. Key {1e7284ba-b3b0-4c9a-8e1c-4dac05942fc7} may be persisted to storage in unencrypted form. Application startup exception: System.TimeZoneNotFoundException: The time zone ID 'Taipei Standard Time' was not found on the local computer. ---> System.IO.FileNotFoundException: Could not find file '/usr/share/zoneinfo/Taipei Standard Time'. at Interop.ThrowExceptionForIoErrno(ErrorInfo errorInfo, String path, Boolean isDirectory, Func`2 errorRewriter) at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String path, OpenFlags flags, Int32 mode) |
Linux 認不得 Taipei Standard Time
那該怎麼辦呢?
今天把 GCP 的記憶體調整縮小,立馬發生 MySQL 崩潰的問題,大膽判斷此問題與記憶體有關,檢查了一下 LOG 果真如此
1 2 3 |
InnoDB: Initializing buffer pool, size = 128.0M InnoDB: mmap(137363456 bytes) failed; errno 12 InnoDB: Completed initialization of buffer pool InnoDB: Fatal error: cannot allocate memory for the buffer pool |
檢查發現 GCP 建立的時候沒有幫我開啟 Swap,然後我又把規格調整到最低的 f1-micro 才引發此問題。
環境:Window 7
1 |
docker volume create vol-mssql |
1 2 3 4 5 6 7 8 9 10 |
docker run \ --restart=always \ --name mssql \ --mount "source=vol-mssql,target=/var/opt/mssql" \ -e "ACCEPT_EULA=Y" \ -e "SA_PASSWORD=1OCHWiY9O#RF" \ -e "MSSQL_PID=Express" \ -e "MSSQL_COLLATION=Chinese_Taiwan_Stroke_CI_AS" \ -p 1433:1433 \ -d microsoft/mssql-server-linux:latest |
1 2 3 4 |
docker exec -ti mssql bash apt-get update apt-get install tzdata -y dpkg-reconfigure tzdata |
參考資料: