大家好,我是冯哥的缓存。开发环境三部曲来到最后一篇。前两篇搞定了 Python / Node.js / Java,这一篇我们来聊聊开发环境用到的三件武器:VS Code(代码编辑器)、Git(版本控制)、Docker(容器化运行环境)。
一、VS Code
VS Code 是目前最流行的代码编辑器,对 Linux 支持非常好,官方提供 deb 包,装完即用。
几种安装方式对比
| | | |
|---|
| | | |
| | 沙箱隔离导致部分功能受限(如 Git 凭据管理器、输入法) | |
| | | |
| | | |
⚠️ 注意: snap 版 VS Code 是最常见的"踩坑点"。输入法失效、Git 凭据存不住、部分终端集成异常,都是 snap 沙箱导致的。强烈推荐用官方 deb 仓库。
方案一:官方 deb 仓库(推荐)
# 1. 安装依赖sudo apt install wget gpg# 2. 导入微软 GPG 公钥wget -qO- https://packages.microsoft.com/keys/microsoft.asc | \ gpg --dearmor | \sudotee /usr/share/keyrings/packages.microsoft.gpg > /dev/null# 3. 添加 VS Code 仓库echo"deb [arch=amd64 signed-by=/usr/share/keyrings/packages.microsoft.gpg] \ https://packages.microsoft.com/repos/code stable main" | \sudotee /etc/apt/sources.list.d/vscode.list# 4. 安装sudo apt updatesudo apt install code# 5. 验证code --version
安装成功后,在应用菜单搜索"Visual Studio Code"或在终端输入 code . 即可打开当前目录。
VS Code 中文界面设置
安装完成后默认是英文界面,改成中文只需几步:
1. 按 Ctrl+Shift+P 打开命令面板2. 输入 Configure Display Language,回车3. 选择 Install additional languages4. 搜索 Chinese (Simplified),安装5. 重启 VS Code 后界面变成中文
必装插件推荐
| |
|---|
| Chinese (Simplified) Language Pack | |
| |
| |
| JavaScript/TypeScript 语法检查 |
| |
| |
| |
| |
💡 提示: 插件在 VS Code 左侧栏点击方块图标(扩展),搜索安装。Remote - SSH 插件可以让你在本地 VS Code 直接编辑远程服务器上的代码,非常好用。
常见问题速查
| | |
|---|
| | |
| | |
| | |
code . | | 执行 sudo ln -s /usr/share/code/code /usr/local/bin/code |
| | |
二、Git
Git 是版本控制的行业标准,Ubuntu/Debian 自带的版本已足够日常使用,但如果需要较新特性,可以加 PPA。
安装方式
方式一:系统仓库(快速,版本略旧)
sudo apt install gitgit --version
方式二:git-core PPA(较新版本)
sudo add-apt-repository ppa:git-core/ppasudo apt updatesudo apt install gitgit --version
首次配置(必做)
装完 Git 后,第一件事是配置用户名和邮箱,这是每次提交记录的身份信息:
# 配置全局用户名和邮箱(替换成你自己的)git config --global user.name "你的名字"git config --global user.email "you@example.com"# 设置默认分支名为 main(GitHub 新仓库默认分支)git config --global init.defaultBranch main# 配置默认编辑器(推荐 nano,比 vim 友好)git config --global core.editor nano# 查看配置git config --list
SSH 密钥配置(推荐)
用 SSH 方式连接 GitHub / Gitee,可以免去每次输密码:
# 1. 生成 SSH 密钥(一路回车用默认设置即可)ssh-keygen -t ed25519 -C "you@example.com"# 2. 查看公钥内容(复制这段内容)cat ~/.ssh/id_ed25519.pub# 3. 测试连接(GitHub 为例)ssh -T git@github.com# 成功显示:Hi yourusername! You've successfully authenticated...
把第2步输出的公钥内容粘贴到:
- GitHub:Settings → SSH and GPG keys → New SSH key
- Gitee
Git 常用命令速查
| |
|---|
git init | |
git clone <url> | |
git status | |
git add . | |
git commit -m "说明" | |
git push | |
git pull | |
git branch | |
git checkout -b 分支名 | |
git log --oneline | |
git diff | |
常见报错速查
| | |
|---|
Permission denied (publickey) | | |
fatal: not a git repository | | |
Updates were rejected | | |
LF will be replaced by CRLF | | git config --global core.autocrlf input |
Your branch is ahead of 'origin/main' | | git push |
三、Docker
Docker 可以把应用及其依赖打包成容器,做到"一次打包,到处运行"。对开发者来说,最实用的场景是:不污染本机环境,用容器跑数据库、中间件、测试服务。
Docker 安装方式对比
方案一:官方 apt 仓库(推荐,Ubuntu/Debian)
# 1. 安装依赖sudo apt updatesudo apt install ca-certificates curl gnupg# 2. 导入 Docker GPG 公钥sudo install -m 0755 -d /etc/apt/keyringscurl -fsSL https://download.docker.com/linux/ubuntu/gpg | \sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpgsudochmod a+r /etc/apt/keyrings/docker.gpg# 3. 添加 Docker 仓库echo \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \ https://download.docker.com/linux/ubuntu \$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \sudotee /etc/apt/sources.list.d/docker.list > /dev/null# 4. 安装 Dockersudo apt updatesudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin# 5. 验证安装sudo docker run hello-world
看到 Hello from Docker! 就说明安装成功了。
方案二:官方一键安装脚本(测试/开发环境快速用)
curl -fsSL https://get.docker.com | sudo sh
⚠️ 注意: 一键脚本适合个人开发机和测试环境。生产服务器建议用方案一,步骤透明可控。
免 sudo 使用 Docker
默认情况下,运行 Docker 命令需要 sudo。把当前用户加入 docker 组可以省掉:
# 将当前用户加入 docker 组sudo usermod -aG docker $USER# 使权限立即生效(或者重启)newgrp docker# 验证(不加 sudo)docker run hello-world
Docker 常用命令速查
| |
|---|
docker pull nginx | |
docker images | |
docker run -d -p 80:80 nginx | |
docker ps | |
docker ps -a | |
docker stop 容器ID | |
docker rm 容器ID | |
docker rmi 镜像名 | |
docker exec -it 容器ID bash | |
docker logs 容器ID | |
docker compose up -d | |
换国内镜像源(解决拉取超时)
Docker Hub 在国内访问不稳定,可以配置国内镜像:
# 编辑 Docker 配置文件(不存在会新建)sudomkdir -p /etc/dockersudotee /etc/docker/daemon.json <<EOF{ "registry-mirrors": [ "https://mirror.ccs.tencentyun.com", "https://registry.cn-hangzhou.aliyuncs.com", "https://hub-mirror.c.163.com" ]}EOF# 重启 Docker 使配置生效sudo systemctl daemon-reloadsudo systemctl restart docker# 验证镜像源docker info | grep -A 3 "Registry Mirrors"
Docker Compose 快速示例
用 Docker Compose 可以一键启动多个服务。以最常用的 MySQL + phpMyAdmin 为例:
新建文件 docker-compose.yml,内容如下:
version:"3.8"services:mysql:image:mysql:8.0environment:MYSQL_ROOT_PASSWORD:你的密码MYSQL_DATABASE:testdbports:-"3306:3306"volumes:-mysql_data:/var/lib/mysqlphpmyadmin:image:phpmyadmin/phpmyadminenvironment:PMA_HOST:mysqlports:-"8080:80"depends_on:-mysqlvolumes:mysql_data:
然后执行:
# 启动(-d 后台运行)docker compose up -d# 浏览器访问 http://localhost:8080 打开 phpMyAdmin# 停止服务docker compose down
💡 提示: Docker Compose 是开发阶段搭本地数据库、Redis、Elasticsearch 等服务的最佳方案,不会污染本机环境,用完 down 一条命令全部清理。
常见报错速查
| | |
|---|
Got permission denied while trying to connect | | sudo usermod -aG docker $USER |
Cannot connect to the Docker daemon | | sudo systemctl start docker |
Error response from daemon: pull access denied | | |
Bind for 0.0.0.0:80 failed: port is already allocated | | |
| | |
四、本系列总结
三篇开发环境安装攻略到此收官,梳理一下我们装过的东西:
💡 提示: 以上工具装完之后,你的 Linux 开发环境就算搭好了一大半。剩下的按需补充:Go、Rust、Ruby、.NET 都有类似的版本管理工具(gvm、rustup、rbenv、dotnet-install.sh),思路完全一致。
五、实战练习
按顺序完成以下操作,把本篇内容串起来:
# ---- VS Code ----# 1. 安装 VS Code deb 版并验证版本code --version# 2. 在终端用 code 打开家目录code ~# ---- Git ----# 3. 配置 Git 用户名和邮箱git config --global user.name "你的名字"git config --global user.email "you@example.com"# 4. 初始化一个测试仓库mkdir ~/git-test && cd ~/git-testgit initecho"# Hello Git" > README.mdgit add .git commit -m "first commit"git log --oneline# ---- Docker ----# 5. 验证 Docker 安装docker --versiondocker compose version# 6. 跑一个 nginx 测试容器docker run -d --name test-nginx -p 8080:80 nginx# 7. 浏览器访问 http://localhost:8080,看到 Welcome to nginx!# 8. 停止并删除测试容器docker stop test-nginxdocker rm test-nginx
下一篇预告:《Linux软件安装攻略之Wine 安装攻略》(上),在这一篇里我们将会聊一下在 Linux 上运行 Windows 软件,基础安装与依赖处理。📦