M1 Pro 利用docker 搭建pytho2的开发环境,以vscode连接开发为例

简介: M1 Pro 利用docker 搭建pytho2的开发环境,以vscode连接开发为例

使用 M1 Pro (不支持python2的安装)开发,需要使用 Python 2.7 的环境,在使用 pyenv 安装 Python 2 时遇到了各种奇怪的问题。最终,我决定使用 Docker 搭建开发环境,并使用 VS Code 连接到本地容器。以下是详细的步骤总结(Markdown 格式):

  1. 安装 Docker:首先,确保已在 M1 Pro 上安装了 Docker。可以从 Docker 官方网站下载并按照说明进行安装。
  2. DockerHub 获取合适的python版本,以下以python 2.718为例。

  3. 创建 Dockerfile:在项目根目录下创建一个名为 Dockerfile 的文件。
python:2.7.18
# 设置工作目录
WORKDIR /app
# 复制项目文件到容器中
COPY .  /app
# 设置环境变量
ENV PYTHONPATH=/app
  1. 在 Dockerfile 中,我们使用 Python 2.7.18 的官方镜像作为基础镜像,并设置了工作目录、复制项目文件和安装依赖。
  2. 构建 Docker 镜像:在终端中,进入到包含 Dockerfile 的项目根目录,并运行以下命令来构建 Docker 镜像。
docker build -t my-python2-app .
  1. 这将根据 Dockerfile 中的配置构建一个名为 my-python2-app 的镜像。注意,命令最后的 . 表示使用当前目录作为构建上下文。
  2. 运行 Docker 容器:在终端中,运行以下命令来启动一个基于你构建的镜像的 Docker 容器。
docker run -it --rm -v .:/app  my-python2-app
  1. 这将启动一个交互式的容器,并将当前目录挂载到容器的 /app 目录中。
  2. 安装 VS Code 插件:在 VS Code 中,安装 “Dev Containers” 扩展。这个扩展允许我们连接到 Docker 容器进行开发。

  3. 连接到容器:在 VS Code 中,点击左边的下图图标,然后选择 “在当前窗口附加”。这将显示一个列表,列出了当前正在运行的容器。

  4. 选择容器:从列表中选择刚刚运行的容器。VS Code 将尝试连接到选定的容器。

  • 连接成功,打开工作目录即可看到咱们的文件。
  1. 文件打开成功将显示如下

10. 开发,容器里写的代码,由于前面挂在了目录(-v .:/app),所以会在本地持久化,docker 保持无状态。

如果对你有帮助的话,可以给个小小👍+收藏吗

相关文章
|
29天前
|
人工智能 Java Python
python安装、vscode安装、conda安装:一文搞定Python的开发环境(史上最全)
尼恩架构团队推出了一系列《LLM大模型学习圣经》PDF,旨在帮助读者深入理解并掌握大型语言模型(LLM)及其相关技术。该系列包括Python基础、Transformer架构、LangChain框架、RAG架构及LLM智能体等内容,覆盖从理论到实践的各个方面。此外,尼恩还提供了配套视频教程,计划于2025年5月前发布,助力更多人成为大模型应用架构师,冲击年薪百万目标。
|
29天前
|
JavaScript 前端开发 jenkins
抛弃node和vscode,如何用记事本开发出一个完整的vue前端项目
本文探讨了在不依赖Node和VSCode的情况下,仅使用记事本和浏览器开发一个完整的Vue3前端项目的方法。通过CDN引入Vue、Vue Router、Element-UI等库,直接编写HTML文件实现页面功能,展示了前端开发的本质是生成HTML。虽然日常开发离不开现代工具,但掌握这种基础方法有助于快速实现想法或应对特殊环境限制。文章还介绍了如何用Node简单部署HTML文件到服务器,提供了一种高效、轻量的开发思路。
55 10
|
3月前
|
自然语言处理 API C++
阿里通义推出SmartVscode插件,自然语言控制VS Code,轻松开发应用,核心技术开源!
SmartVscode插件深度解析:自然语言控制VS Code的革命性工具及其开源框架App-Controller
|
3月前
|
开发工具 C++ git
利用VS Code提升开发效率的五大插件推荐
本文推荐了五款能显著提升开发效率的VS Code插件:ESLint用于代码质量和风格检查;Prettier自动格式化代码;GitLens增强Git功能;Live Server提供前端实时预览;Docker支持容器管理。
|
3月前
|
监控 前端开发 Java
【技术开发】接口管理平台要用什么技术栈?推荐:Java+Vue3+Docker+MySQL
该文档介绍了基于Java后端和Vue3前端构建的管理系统的技术栈及功能模块,涵盖管理后台的访问、登录、首页概览、API接口管理、接口权限设置、接口监控、计费管理、账号管理、应用管理、数据库配置、站点配置及管理员个人设置等内容,并提供了访问地址及操作指南。
|
3月前
|
缓存 监控 开发者
掌握Docker容器化技术:提升开发效率的利器
在现代软件开发中,Docker容器化技术成为提升开发效率和应用部署灵活性的重要工具。本文介绍Docker的基本概念,并分享Dockerfile最佳实践、容器网络配置、环境变量和秘密管理、容器监控与日志管理、Docker Compose以及CI/CD集成等技巧,帮助开发者更高效地利用Docker。
|
4月前
|
前端开发 JavaScript 编译器
2024最新VSCode实用插件推荐,开发效率遥遥领先!超全面,快收藏~
【10月更文挑战第11天】2024最新VSCode实用插件推荐,开发效率遥遥领先!超全面,快收藏~
1117 0
2024最新VSCode实用插件推荐,开发效率遥遥领先!超全面,快收藏~
|
4月前
|
网络安全 Docker 容器
VScode远程服务器之远程 远程容器 进行开发(五)
VScode远程服务器之远程 远程容器 进行开发(五)
98 1
|
4月前
|
Kubernetes 网络安全 容器
VScode远程服务器进行开发(三)
VScode远程服务器进行开发(三)
91 0
|
4月前
|
Linux 网络安全 Windows
VScode远程开发之remote 远程开发(二)
VScode远程开发之remote 远程开发(二)
55 0

热门文章

最新文章