从UKUI桌面到全栈开发环境:openEuler高效配置指南

当你第一次看到openEuler的UKUI桌面时,可能会被它简洁优雅的界面所吸引。但作为一个开发者,我们需要的远不止一个漂亮的桌面环境。本文将带你从零开始,在openEuler上搭建一个完整的开发环境,涵盖Python、Node.js和Docker三大核心工具链。

1. 基础配置:为开发环境铺路

在开始安装各种开发工具之前,我们需要先为系统打好基础。openEuler默认的软件源可能不是最快的,特别是对于国内用户来说。更换为国内镜像源可以显著提升软件下载速度。

1.1 配置国内软件源

华为和清华大学都提供了openEuler的镜像源,我们可以通过以下步骤进行配置:

sudo cp /etc/yum.repos.d/openEuler.repo /etc/yum.repos.d/openEuler.repo.bak
sudo sed -e 's|^metalink=|#metalink=|g' \
         -e 's|^#baseurl=http://repo.openeuler.org|baseurl=https://mirrors.huaweicloud.com/openeuler|g' \
         -i /etc/yum.repos.d/openEuler.repo

这个命令做了三件事:

  1. 备份原有的源配置文件
  2. 注释掉metalink行(使用HTTPS直接下载)
  3. 将源地址替换为华为云镜像

更新软件包缓存:

sudo dnf clean all
sudo dnf makecache

提示:如果清华镜像更适合你的网络环境,可以将baseurl替换为https://mirrors.tuna.tsinghua.edu.cn/openeuler

1.2 系统更新与基础工具安装

保持系统最新是安全稳定的前提:

sudo dnf update -y

安装开发者必备工具:

sudo dnf install -y git curl wget vim zsh make gcc gcc-c++ kernel-devel

这些工具将在后续的开发环境配置中发挥作用,特别是gcc和kernel-devel,是编译某些软件包的必要组件。

2. Python开发环境配置

Python是现代开发中不可或缺的语言,openEuler默认可能没有安装最新版本的Python,我们需要手动配置。

2.1 安装Python 3.9

openEuler的仓库中提供了多个Python版本,我们可以选择安装3.9:

sudo dnf install -y python39 python39-devel python39-pip

设置默认Python版本:

sudo alternatives --set python /usr/bin/python3.9
sudo alternatives --set python3 /usr/bin/python3.9

验证安装:

python --version
pip3.9 --version

2.2 配置Python虚拟环境

为了避免项目间的依赖冲突,我们使用虚拟环境:

sudo pip3.9 install --upgrade pip
sudo pip3.9 install virtualenv virtualenvwrapper

.bashrc.zshrc中添加以下内容:

export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3.9
source /usr/local/bin/virtualenvwrapper.sh

然后执行:

source ~/.bashrc
mkvirtualenv myenv

2.3 常用Python工具安装

pip install ipython jupyterlab black flake8 pylint autopep8

这些工具将提供:

  • 交互式Python开发体验(IPython)
  • 笔记本式开发环境(JupyterLab)
  • 代码格式化(Black)
  • 代码质量检查(Flake8, Pylint)

3. Node.js开发环境配置

JavaScript生态是现代全栈开发的重要组成部分,我们需要在openEuler上配置Node.js环境。

3.1 安装Node.js 16.x

通过NodeSource仓库安装最新LTS版本:

curl -fsSL https://rpm.nodesource.com/setup_16.x | sudo bash -
sudo dnf install -y nodejs

验证安装:

node --version
npm --version

3.2 配置npm和yarn

设置npm国内镜像源:

npm config set registry https://registry.npmmirror.com

安装yarn:

sudo npm install -g yarn
yarn config set registry https://registry.npmmirror.com

3.3 常用Node.js工具

sudo npm install -g typescript ts-node nodemon pm2 eslint prettier

这些工具提供了:

  • TypeScript支持
  • 开发时自动重启
  • 生产环境进程管理
  • 代码质量和风格检查

4. Docker容器化开发

容器技术已经成为现代开发的标配,让我们在openEuler上配置Docker环境。

4.1 安装Docker CE

添加Docker官方仓库:

sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

安装Docker引擎:

sudo dnf install -y docker-ce docker-ce-cli containerd.io

启动并设置开机自启:

sudo systemctl enable --now docker

将当前用户加入docker组:

sudo usermod -aG docker $USER
newgrp docker

4.2 配置Docker镜像加速

创建或修改/etc/docker/daemon.json

{
  "registry-mirrors": [
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com"
  ]
}

重启Docker服务:

sudo systemctl restart docker

4.3 常用Docker工具

安装Docker Compose:

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

安装可视化工具Lazydocker:

curl https://raw.githubusercontent.com/jesseduffield/lazydocker/master/scripts/install_update_linux.sh | bash

5. 开发环境优化与整合

现在我们已经安装了主要的开发工具,接下来需要将它们整合成一个高效的工作环境。

5.1 终端环境配置

安装oh-my-zsh:

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

推荐插件:

git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

.zshrc中启用插件:

plugins=(git zsh-autosuggestions zsh-syntax-highlighting)

5.2 IDE安装与配置

VS Code是大多数开发者的首选,我们可以通过以下方式安装:

sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
sudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/vscode.repo'
sudo dnf install -y code

推荐安装的扩展:

  • Python
  • Pylance
  • ESLint
  • Docker
  • Remote - Containers

5.3 开发环境验证

创建一个简单的全栈项目验证环境:

mkdir fullstack-demo && cd fullstack-demo
python -m venv venv
source venv/bin/activate
pip install flask
npm init -y
npm install express

创建app.py

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello():
    return "Hello from Python!"

if __name__ == '__main__':
    app.run(port=5000)

创建server.js

const express = require('express')
const app = express()
const port = 3000

app.get('/', (req, res) => {
  res.send('Hello from Node.js!')
})

app.listen(port, () => {
  console.log(`Example app listening at http://localhost:${port}`)
})

创建docker-compose.yml

version: '3'
services:
  python-app:
    build: .
    ports:
      - "5000:5000"
  node-app:
    build: .
    command: node server.js
    ports:
      - "3000:3000"

现在你可以分别测试Python和Node.js应用,也可以使用Docker Compose启动整个环境。

更多推荐