Windows11 配置指南(golang开发者)

1. 前言#

将windows作为开放环境,对于开发人员并不友好(至少对于我这总习惯在unix下开发的人来说),其难用的powershell,让人很头疼,不过幸运的是Windows提供了WSL2,可以运行linux子系统。倘若能够用WSL作为开发环境,宿主Windows用作办公环境,就可以弥补只用linux作为主力环境下一些软件生态不足的缺点(有钱直接上mac)。这篇文章就是为那些,用windows下WSL2作为开发环境的人员提供的。

注意:开始前请确保你的系统支持wsl2

  • 对于 x64 系统:版本 1903 或更高版本,采用内部版本 18362 或更高版本。
  • 对于 ARM64 系统:版本 2004 或更高版本,采用内部版本 19041 或更高版本。
  • 低于 18362 的版本不支持 WSL 2。

2. 宿主机Windows的配置#

以下所涉及的所有命令均使用管理员身份运行(“开始”菜单 >“PowerShell”> 单击右键 >“以管理员身份运行”)

1. 启用WSL#

Copy
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

2. 启用虚拟机功能#

安装 WSL 2 之前,必须启用“虚拟机平台”可选功能。

Copy
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

重启计算机

3. 下载 Linux 内核更新包#

  1. 下载最新包

  2. 运行上一步中下载的更新包。 (双击以运行 - 系统将提示你提供提升的权限,选择“是”以批准此安装。)

4. 将 WSL 2 设置为默认版本#

Copy
wsl --set-default-version 2

5. 安装所选的 Linux 分发#

打开应用商店选择一款Linux发行版(本教程使用Ubuntu)

首次启动新安装的 Linux 分发版时,将打开一个控制台窗口,系统会要求你等待一分钟或两分钟,以便文件解压缩并存储到电脑上。 未来的所有启动时间应不到一秒。

然后,需要为新的 Linux 分发版创建用户帐户和密码。

6. 下载vscode作为开发工具(可选)#

推荐使用vscode是因为vscode提供了RemoteWSL插件,可以直接将WSL作为开发环境,并且vscode是免费的

7. windows terminal的美化(可选)#

本教程不涉及过多美化,只有设置透明背景以及更换字体等简单操作。

打开windows terminal的配置文件(ctrl + ,), 找到// Put settings here that you want to apply to all 这句话,改成如下,下面涉及到的字体可以从这里下载到

Copy
"defaults": { // Put settings here that you want to apply to all profiles. "acrylicOpacity": 0.85, // 背景透明度 0-1 "useAcrylic": true, // 背景模糊 "fontFace": "RobotoMono Nerd Font", // 字体 "cursorShape": "vintage", // 光标样式 "bar" ( ┃ )、"vintage" ( ▃ )、"underscore" ( ▁ )、"filledBox" ( █ )、"emptyBox" ( ▯ ) "antialiasingMode": "cleartype" // 抗锯齿 },

通过windows terminal打开的ubuntu默认的路径是你Windows的Home目录,可以将其修改为ubuntu的Home目录(如果你想这样做的话)

Copy
{ "guid": "{2c4de342-38b7-51cf-b940-2309a097f518}", "hidden": false, "name": "Ubuntu", "source": "Windows.Terminal.Wsl", "startingDirectory": "//wsl$/Ubuntu/home/kain" // 新增这一行,最后的名字改成你自己的用户名 }

3. 在WSL中配置开发环境#

注意:本教程使用的是Ubuntu

1. 修改shell为zsh#

Copy
sudo apt-get install zsh
Copy
chsh -s /bin/zsh

重新进入wsl,确保shell已经被换成zsh

2. 安装oh-my-zsh#

  1. 先确保这几个命令已经被安装
Copy
sudo apt-get install git wget curl
  1. 安装ohmyzsh
Copy
sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"
  1. 安装两个常用插件
Copy
git clone git://github.com/zsh-users/zsh-autosuggestions.git ~/.oh-my-zsh/plugins/zsh-autosuggestions git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ~/.oh-my-zsh/plugins/zsh-syntax-highlighting sed -i 's!plugins=(git)!plugins=(git sudo zsh-autosuggestions zsh-syntax-highlighting)!g' ~/.zshrc
  1. source
Copy
source ~/.zshrc

3. 安装docker#

直接使用apt安装的docker可能版本较老,使用下面的过程可安装最新的docker

  1. 更新源&安装依赖
Copy
sudo apt-get update sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release
  1. 添加Docker官方的GPG密钥
Copy
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
  1. 添加apt仓库
Copy
echo \ "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  1. 安装docker
Copy
sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io
  1. 将当前用户加入docker用户组
Copy
sudo gpasswd -a ${USER} docker
  1. 启停docker的命令

启动docker

Copy
sudo service docker start

停止docker

Copy
sudo service docker stop

重启docker

Copy
sudo service docker restart

4. 安装golang开发环境#

直接使用apt安装的golang可能版本较老,使用下面的过程可安装最新的golang

  1. 官方网站下载最新的golang安装包这里以1.17.7为例
Copy
wget https://golang.google.cn/dl/go1.17.7.linux-amd64.tar.gz
  1. 解压安装包
Copy
sudo tar -C /usr/local -xzf go1.17.7.linux-amd64.tar.gz
  1. 创建gopath目录(~/.go为例)
Copy
mkdir -p ~/.go mkdir -p ~/.go/bin mkdir -p ~/.go/src mkdir -p ~/.go/pkg
  1. 加入环境变量
Copy
echo "export GOROOT=/usr/local/go" >> ~/.zshrc echo "export GOPATH=~/.go" >> ~/.zshrc echo "export GOBIN=~/.go/bin" >> ~/.zshrc echo "export PATH=$PATH:$GOROOT/bin:$GOBIN" >> ~/.zshrc source ~/.zshrc
  1. goproxy
Copy
go env -w GOPROXY=https://goproxy.io,direct

4. 结尾#

我们完全不需要在windows宿主机中安装任何开发环境,所有的开发环境只需要安装在wsl中即可,windows中只需要一些常用的IDE,办公聊天软件。

注意宿主机通过vEthernet这张网卡和WSL通信,宿主机和wsl拥有不同的两个IP

wsl命令参考:https://docs.microsoft.com/zh-cn/windows/wsl/basic-commands

posted @   KainHuck  阅读(1849)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示
CONTENTS