Ubuntu开发环境配置

LiunxDockerGitTechnology

Ubuntu开发环境配置

Docker

1. 更新系统

首先,确保你的系统是最新的:

bash
sudo apt update && sudo apt upgrade -y

2. 安装 Docker

安装 Docker CE (社区版)

  1. 更新 apt 包索引:

    bash
    sudo apt-get install apt-transport-https ca-certificates curl software-properties-common -y
  2. 添加 Docker 官方 GPG 密钥:

    bash
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
  3. 设置 Docker 的稳定版仓库:

    bash
    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
  4. 安装 Docker:

    bash
    sudo apt update
    sudo apt install docker-ce docker-ce-cli containerd.io -y
  5. 启动并检查 Docker 状态:

    bash
    sudo systemctl start docker
    sudo systemctl enable docker
    sudo systemctl status docker
  6. 为了无需使用 sudo 来运行 Docker 命令,添加当前用户到 Docker 组:

    bash
    sudo usermod -aG docker $USER

    然后注销并重新登录,或者运行:

    bash
    newgrp docker

验证 Docker 安装

bash
docker --version
docker run hello-world

Python&AI 开发环境

1.安装 Python 及相关工具

  1. 安装 Python 3 和 pip:

    bash
    sudo apt install python3 python3-pip -y
  2. 创建虚拟环境(推荐用于隔离不同的项目):

    bash
    sudo apt install python3-venv
    python3 -m venv myenv
    source myenv/bin/activate

2.安装 AI 框架(如 TensorFlow 或 PyTorch)

  1. 安装 TensorFlow:

    bash
    pip install tensorflow
  2. 安装 PyTorch(根据你的系统和硬件选择相应版本):

    bash
    pip install torch torchvision torchaudio

3.安装其他依赖(例如用于数据处理的 pandas, numpy)

bash
pip install pandas numpy matplotlib
  1. 配置 Docker 环境以运行 AI 项目

你可以创建一个 Docker 容器来运行 AI 项目,以下是一个简单的 TensorFlow 环境 Dockerfile 示例:

Dockerfile
# 使用官方 Python 镜像
FROM python:3.9

# 设置工作目录
WORKDIR /app

# 安装 TensorFlow
RUN pip install tensorflow

# 复制你的代码到容器
COPY . /app

# 设置容器启动命令
CMD ["python", "your_script.py"]

构建和运行 Docker 镜像:

bash
docker build -t ai-env .
docker run --gpus all ai-env  # 如果你有 GPU,使用 --gpus 参数来启用
  1. 安装 Jupyter Notebook(可选)

如果你想使用 Jupyter Notebook 进行 AI 开发,可以通过以下步骤安装:

  1. 安装 Jupyter:

    bash
    pip install jupyter
  2. 启动 Jupyter Notebook:

    bash
    jupyter notebook

好的,下面是你在 Ubuntu 上安装 Git、Node.js 和 Go 的步骤。

安装 Git

使用 apt 安装 Git

  1. 更新包列表:

    bash
    sudo apt update
  2. 安装 Git:

    bash
    sudo apt install git -y
  3. 检查 Git 是否安装成功:

    bash
    git --version
  4. (可选)配置 Git 用户名和邮箱:

    bash
    git config --global user.name "Your Name"
    git config --global user.email "your.email@example.com"

安装 Node.js

nvm(Node Version Manager)这个工具,它能让你更方便地管理多个版本的 Node.js。使用 nvm 安装 Node.js 是一种更灵活的做法,特别是在你需要在同一台机器上使用不同版本的 Node.js 时。

使用 nvm 安装 Node.js

1. 安装 nvm

首先,你需要安装 nvm。你可以通过以下命令来安装:

bash
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash

安装完成后,你需要让配置生效。执行下面的命令来加载 nvm 环境变量:

bash
source ~/.bashrc  # 或者是 ~/.zshrc(如果你使用的是 zsh)

如果你是使用的默认终端配置文件,你可以直接关闭终端再重新打开。

2. 检查 nvm 是否安装成功

bash
command -v nvm

如果返回 nvm,说明安装成功。

3. 使用 nvm 安装 Node.js

通过 nvm,你可以安装任意版本的 Node.js。例如,安装最新的稳定版本:

bash
nvm install node  # 这会安装最新的 LTS 版本

或者,你可以安装指定版本:

bash
nvm install 16  # 安装 Node.js 16.x 版本

4. 切换 Node.js 版本

安装完成后,你可以轻松切换到不同的 Node.js 版本:

bash
nvm use 16  # 切换到 Node.js 16.x 版本
nvm use 14  # 切换到 Node.js 14.x 版本

如果你想让某个版本成为默认版本,可以使用:

bash
nvm alias default 16

5. 查看已安装的 Node.js 版本

你可以查看当前安装的所有版本:

bash
nvm ls

安装 Go

Go 可以通过官方提供的二进制包进行安装。

安装 Go

  1. 下载 Go 的最新版本:

    bash
    wget https://golang.org/dl/go1.20.6.linux-amd64.tar.gz

    这个命令会下载 Go 1.20.6 的 Linux 版本。如果需要不同的版本,可以访问 Go 官方下载页面 获取链接。

  2. 解压 Go 安装包:

    bash
    sudo tar -C /usr/local -xvzf go1.20.6.linux-amd64.tar.gz
  3. 配置环境变量: 在 ~/.bashrc~/.zshrc 中添加以下行:

    bash
    export PATH=$PATH:/usr/local/go/bin
    export GOPATH=$HOME/go
  4. 使配置生效:

    bash
    source ~/.bashrc
  5. 检查 Go 是否安装成功:

    bash
    go version

终端/CLI

要让命令行界面(CLI)变得现代化且好用,可以通过一系列的个性化配置来提升用户体验。以下是一些常见的优化技巧,涵盖了 外观美化功能增强效率提升

1. 使用更强大的终端(Terminal)

推荐终端工具:

  • Alacritty:轻量级高性能终端,支持 GPU 加速。
  • Tilix:支持分屏功能的终端,适合多任务处理。
  • Kitty:支持 GPU 加速的跨平台终端,功能强大,支持图像渲染。

如果你还没有,安装一个更现代的终端工具会给你一个全新的体验。

2. 使用 Oh My Zsh 来替代 Bash

Oh My Zsh 是一个开源的框架,旨在提升 zsh 的使用体验。它提供了很多实用的插件和主题,帮助你更高效地工作。

安装 Zsh 和 Oh My Zsh

  1. 安装 Zsh:

    bash
    sudo apt install zsh -y
  2. 安装 Oh My Zsh

    bash
    sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

3. 配置 Oh My Zsh

  • 选择一个主题:Oh My Zsh 默认有许多主题(如 agnoster, robbyrussell)。你可以在 ~/.zshrc 文件中设置主题:

    bash
    ZSH_THEME="agnoster"

    推荐使用 agnosterpowerlevel10k,这两个主题有着漂亮的提示符和支持 Git 状态显示。

  • 安装 Powerlevel10k 主题:Powerlevel10k 是一个非常流行的 Zsh 主题,提供美观的命令行提示符和丰富的定制选项。

    安装 Powerlevel10k:

    bash
    git clone --depth=1 https://github.com/romkatv/powerlevel10k.git $ZSH_CUSTOM/themes/powerlevel10k

    ~/.zshrc 中设置主题:

    bash
    ZSH_THEME="powerlevel10k/powerlevel10k"

    配置 Powerlevel10k 提示符:

    bash
    p10k configure

    这会启动一个配置向导,让你选择你喜欢的提示符风格。

3. 安装插件增强功能

Oh My Zsh 提供了许多实用插件,你可以根据需要安装它们来增强命令行的功能。

  • zsh-autosuggestions:命令自动补全建议,基于历史命令。 安装:

    bash
    git clone https://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions

    ~/.zshrc 中启用插件:

    bash
    plugins=(... zsh-autosuggestions)
  • zsh-syntax-highlighting:语法高亮插件,帮助你更清晰地看到命令中的关键部分。 安装:

    bash
    git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $ZSH_CUSTOM/plugins/zsh-syntax-highlighting

    ~/.zshrc 中启用插件:

    bash
    plugins=(... zsh-syntax-highlighting)
  • git 插件:Git 相关命令的增强支持,比如快捷的 git status 显示和 git branch 提示。

    ~/.zshrc 文件的插件部分启用:

    bash
    plugins=(... git)

4. 自定义提示符(Prompt)

如果你使用 Powerlevel10k,它会自动为你提供一个非常强大的提示符。不过,如果你希望更多地定制,可以根据需求修改 ~/.zshrc 中的 prompt 设置。比如显示 Git 状态、时间、系统信息等。

bash
PROMPT='%n@%m %1~ $(git_prompt_info) %# '

5. 配置自动补全和别名

你可以通过自定义命令别名和自动补全,减少输入的复杂度。

创建别名

~/.zshrc 中添加一些常用命令的别名:

bash
alias ll='ls -lah'
alias gs='git status'
alias ga='git add'
alias gc='git commit'
alias gp='git push'

自动补全

你可以启用 zsh-completions 插件来增强补全功能,支持更多工具的自动补全。

bash
git clone https://github.com/zsh-users/zsh-completions $ZSH_CUSTOM/plugins/zsh-completions

然后在 ~/.zshrc 中启用:

bash
plugins=(... zsh-completions)

6. 提升生产力的工具

  • fzf:命令行模糊查找工具,帮助你快速搜索文件和命令历史。 安装:

    bash
    sudo apt install fzf

    使用:

    bash
    ctrl + t  # 查找文件
    ctrl + r  # 查找命令历史
  • ripgrep (rg):比 grep 更快速的搜索工具。 安装:

    bash
    sudo apt install ripgrep

    使用:

    bash
    rg <pattern>  # 查找文件内容
  • bat:替代 cat,带有语法高亮和分页功能的查看文件工具。 安装:

    bash
    sudo apt install bat

    使用:

    bash
    bat filename
    • htop

    htop 是一个交互式的系统监控工具,提供了比传统的 top 更友好的界面。它能实时显示 CPU、内存、交换空间(swap)使用情况,还能显示进程树,方便你查看哪个进程占用了多少资源。

    • 安装 htop

      sudo apt install htop
      
    • 运行 htop

      htop
      

    你可以通过箭头键选择进程,查看每个进程的 CPU 和内存使用情况,并根据需要终止高负载的进程。

    • nvidia-sm

    nvidia-smi 是一个 NVIDIA 提供的命令行工具,用于监控 GPU 的使用情况。它显示了 GPU 的负载、显存使用、温度等信息,适用于所有支持 NVIDIA 显卡的系统。

    • 查看 GPU 使用情况:

      nvidia-smi
      
    • 查看实时的 GPU 使用情况(刷新每秒一次):

      watch -n 1 nvidia-smi
      

    nvidia-smi 是非常有用的,尤其在进行 Stable DiffusionLLM 推理 时,你需要查看显卡的使用情况,尤其是显存使用。

  • nvtop

nvtop 是一个 NVIDIA GPU 的实时监控工具,类似于 htop,但专门针对 NVIDIA GPU,显示 GPU 的使用情况、温度、功率等信息。

  • 安装 nvtop

    sudo apt install nvtop
    
  • 运行 nvtop

    bash
    nvtop

它提供了更丰富的 GPU 监控视图,适用于大量计算任务需要使用 GPU 的场景,如 AI 推理、训练等。

7. 配置主题和配色

你可以选择更现代化的配色方案来使命令行界面更加清晰、舒服。

配色方案

你可以通过 ~/.zshrc 文件调整配色。比如安装 base16-shell 主题来统一终端的配色方案:

bash
git clone https://github.com/chriskempson/base16-shell.git ~/.config/base16-shell

然后在 ~/.zshrc 文件中添加:

bash
source $HOME/.config/base16-shell/scripts/base16-default-dark.sh

总结

这些配置和工具可以让你的终端变得更加现代化、易用和高效。通过结合 zshOh My ZshPowerlevel10k 主题、插件和一些常用工具,你可以大大提升命令行使用体验。