使用 M1 Pro (不支持python2的安装)开发,需要使用 Python 2.7 的环境,在使用 pyenv 安装 Python 2 时遇到了各种奇怪的问题。最终,我决定使用 Docker 搭建开发环境,并使用 VS Code 连接到本地容器。以下是详细的步骤总结(Markdown 格式):
- 安装 Docker:首先,确保已在 M1 Pro 上安装了 Docker。可以从 Docker 官方网站下载并按照说明进行安装。
- 到DockerHub 获取合适的python版本,以下以
python 2.718
为例。 - 创建 Dockerfile:在项目根目录下创建一个名为
Dockerfile
的文件。
python:2.7.18 # 设置工作目录 WORKDIR /app # 复制项目文件到容器中 COPY . /app # 设置环境变量 ENV PYTHONPATH=/app
- 在 Dockerfile 中,我们使用 Python 2.7.18 的官方镜像作为基础镜像,并设置了工作目录、复制项目文件和安装依赖。
- 构建 Docker 镜像:在终端中,进入到包含 Dockerfile 的项目根目录,并运行以下命令来构建 Docker 镜像。
docker build -t my-python2-app .
- 这将根据 Dockerfile 中的配置构建一个名为
my-python2-app
的镜像。注意,命令最后的.
表示使用当前目录作为构建上下文。 - 运行 Docker 容器:在终端中,运行以下命令来启动一个基于你构建的镜像的 Docker 容器。
docker run -it --rm -v .:/app my-python2-app
- 这将启动一个交互式的容器,并将当前目录挂载到容器的
/app
目录中。 - 安装 VS Code 插件:在 VS Code 中,安装 “Dev Containers” 扩展。这个扩展允许我们连接到 Docker 容器进行开发。
- 连接到容器:在 VS Code 中,点击左边的下图图标,然后选择 “在当前窗口附加”。这将显示一个列表,列出了当前正在运行的容器。
- 选择容器:从列表中选择刚刚运行的容器。VS Code 将尝试连接到选定的容器。
- 连接成功,打开工作目录即可看到咱们的文件。
- 文件打开成功将显示如下
10. 开发,容器里写的代码,由于前面挂在了目录(-v .:/app
),所以会在本地持久化,docker 保持无状态。
如果对你有帮助的话,可以给个小小👍+收藏吗