步驟說明時間
確認 Windows 版本
首先按一下 Windows 鍵輸入 winver
來確認目前版本,版本必須是 19041 或是 2004 才可以喔
如果版本不夠的話,更新器下載 » https://www.microsoft.com/en-us/software-download/windows10
開啟環境設定
用系統管理員身分開啟 PowerShell 後,輸入指令開啟 Linux Subsystem 的支援和 HyperV 的虛擬機器平台 用 HyperV 要記得到 BIOS 開啟虛擬機器的支援喔
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
這時候你需要重啟一下電腦~
然後要更新 linux subsystem kernel https://docs.microsoft.com/nl-nl/windows/wsl/wsl2-kernel
安裝 Linux 發行版
按一下 Windows 鍵輸入 Microsoft Store
後開啟商店選擇你要的 Linux 版本,在這裡我選擇 Ubuntu1804
另外偷偷下載了 windows terminal,有比較漂亮R
看一看 WSL2 的設定
更新完後開啟 PowerShell 將 WSL 預設版本改為 2
wsl --set-default-version 2
可以用 wsl -l
來列出你的 Linux 們,把原本存在的 WSL 升級成 WSL2
wsl --set-version Ubuntu-18.04 2
輸入 wsl -l -v
應該可以看見 Version 2,那這樣就對啦~
Docker Time
首先在 Win10 下載桌面版 Docker, https://docs.docker.com/docker-for-windows/wsl/
下載好了嗎? 打開來選擇 WSL2 作為 backend
安裝好之後他會請你重新登入你的 Win10,
完成後選擇 Settings(上方的小齒輪) > General 來確認一下 Use the WSL2 based engine
選項
再來到 Resources > WSL Integartion,把你的 WSL linux 發行版選起來
點右下角的 Apply & Restart
開啟你的 terminal,輸入 wsl -d <你的系統>
進入 WSL 的系統內
輸入 docker ps
確認有抓到 docker ~
開個服務吧
-d
在背景執行-p
port 導出--name
幫 container 取名字
docker run -d -p 8080:80 --name docker_time docker/getting-started
看看你的 http://localhost:8080 服務開起來囉
測試完 docker 可以工作了,所以刪掉
docker kill docker_time
任性的個人化時間
# 更新一下
sudo apt update && sudo apt upgrade -y
# git 設定
git config --global core.ignorecase false
git config --global alias.co 'checkout'
git config --global alias.chekcout 'checkout'
git config --global alias.log1 'log --oneline -n 10'
git config --global alias.logg 'log --oneline --graph'
git config --global alias.cm 'commit -m'
git config --global alias.cmamend '!git add $1 && git commit --amend --no-edit'
# shell 設定
sudo apt install fish -y
curl -L https://get.oh-my.fish | fish
omf install godfather
# 開專案資料夾
mkdir projects
ln -s (pwd)/projects ~/projects
Golang 環境 (gvm)
不囉嗦直接抄 » https://blog.miniasp.com/post/2020/07/27/Build-Golang-Dev-Box-in-Windows?utm_source=Facebook_PicSee
sudo apt install binutils bison gcc make build-essential -y
curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer | bash -E
source ~/.gvm/scripts/gvm
set GOVER go1.14
gvm install go1.14 --binary
gvm use go1.14 --default
# 確認我們的工作~~
go version
紀錄一點問題
[time=Sat, Aug 8, 2020 1:07 PM]
開啟工作管理員時發現,有一個叫做 vmmem 的佔用了很多的 memory 和 CPU
發現很多人都有這樣的問題,紀錄一下解決方法
移駕到 c:\users\{{your profile name}}
開啟或新增 .wslconfig
{%gist lewcianci/d09ef5e6741fe0eff61935d39e9667ee %}
使用系統管理員身分開啟 PowerShell
Restart-Service LxssManager
參考文章
MicroK8s Time (請勿參考)
直接遇到問題了,snapd 是不可用的狀態
sudo apt-get update && sudo apt-get install -yqq daemonize dbus-user-session fontconfig
sudo daemonize /usr/bin/unshare --fork --pid --mount-proc /lib/systemd/systemd --system-unit=basic.target
exec sudo nsenter -t $(pidof systemd) -a su - $LOGNAME
snap version
還需要開啟 Systemd 把這一段貼上去後關掉視窗重開
## /etc/profile.d/00-wsl2-systemd.sh
# Create the starting script for SystemD
SYSTEMD_PID=$(ps -ef | grep '/lib/systemd/systemd --system-unit=basic.target$' | grep -v unshare | awk '{print $2}')
if [ -z "$SYSTEMD_PID" ]; then
sudo /usr/bin/daemonize /usr/bin/unshare --fork --pid --mount-proc /lib/systemd/systemd --system-unit=basic.target
SYSTEMD_PID=$(ps -ef | grep '/lib/systemd/systemd --system-unit=basic.target$' | grep -v unshare | awk '{print $2}')
fi
if [ -n "$SYSTEMD_PID" ] && [ "$SYSTEMD_PID" != "1" ]; then
exec sudo /usr/bin/nsenter -t $SYSTEMD_PID -a su - $LOGNAME
fi
好,問題解決來安裝吧
# 安裝 microk8s
sudo snap install microk8s --classic
# 嘗試一下指令,他會提醒你要給權限照著做吧~記得要把 user 換掉喔
microk8s.status
sudo usermod -a -G microk8s arios
sudo chown -f -R arios ~/.kube
完成後離開重新登入,就可以開始開服務囉
microk8s.enable dns dashboard
for Win10 2004
你各位阿~!這個中文輸入阿,很不ok阿 當輸入中文的時候需要切換成英文就會爆炸?
往右下角的 中/A 點一下右鍵
一般 > 輸入設定 > “自動將中文模式中的按鍵順序切換為英數字元” 開起來
恩~是稍微好點了,不過這個選項也有毛病…… 你一按錯注音他給你改成英文阿QQ 哪個比較困擾需要個人評估了
Ref
https://docs.microsoft.com/zh-tw/windows/wsl/install-win10
https://pureinfotech.com/install-windows-subsystem-linux-2-windows-10/
https://blog.miniasp.com/post/2020/07/26/Multiple-Linux-Dev-Environment-build-on-WSL-2
https://docs.docker.com/docker-for-windows/wsl/
https://github.com/microsoft/WSL/issues/5126#issuecomment-653715201