前言
个人还是喜欢在 Linux 环境中进行编程,因为在 Linux 中安装开发组件和配置环境比较方便,但有时候经常会遇到一些坑,例如环境依赖问题等,所以特意写了这篇文章,把一些经历和心得记录下来,以便不时之需。
常见问题
pip 安装 mysqlclient 报错
- 利用 pip 安装 MySQL 驱动时,会遇到以下的情况。
- 可以通过以下命令行安装 dev 依赖来解决。
sudo apt-get install libmysqlclient-dev python3-dev
升级 pip 导致 pip 异常
- 升级 pip 以后出现
ImportError:cannot import name 'main'
错误。 - 可利用命令行
sudo vim /usr/bin/pip3
将原来的内容from pip import main if __name__ == '__main__': sys.exit(main())
- 修改为以下内容即可解决该问题:
from pip import __main__ if __name__ == '__main__': sys.exit(__main__._main())
npm 安装 node-sass 依赖报错
- npm 在安装 node-sass 时,会从 GitHub 上下载部分依赖,由于墙的存在,可能会导致下载超时。
- 可以通过设置淘宝镜像源来解决:
npm i node-sass --sass_binary_site=https://npm.taobao.org/mirrors/node-sass/
- 或者设置全局镜像源,再进行依赖安装:
npm config set sass_binary_site https://npm.taobao.org/mirrors/node-sass/
运行 docker 命令提示权限不足
- 在安装 docker 之后运行 docker 命令,可能会遇到如下的情况,提示 Got permission denied:
- 因为 docker 运行在 Unix Socket 端口上,默认只有 root 用户才有权限访问,因此需要将当前用户加入到 docker 用户组中,如此一来当前用户就有权访问 Unix Socket 端口了。
- 依次执行以下命令即可:
sudo groupadd docker #添加docker用户组 sudo gpasswd -a $USER docker #将登陆用户加入到docker用户组中 newgrp docker #更新用户组 docker ps #测试docker命令是否可以使用sudo正常使用
docker pull 镜像速度太慢
-
用 VIM 编辑 /etc/docker/daemon.json 文件:
sudo vim /etc/docker/daemon.json
-
向其中写入国内镜像源地址:
{ "registry-mirrors": [ "https://registry.docker-cn.com", "https://docker.mirrors.ustc.edu.cn" ] }
-
保存退出后,重启 docker 服务:
sudo systemctl daemon-reload sudo systemctl restart docker