推荐:使用NSDT场景编辑器快速搭建3D应用场景
作为一名数据科学家,拥有一个标准化的便携式分析和建模环境至关重要。Docker 提供了一种创建可重用和可共享的数据科学环境的绝佳方法。在本文中,我们将逐步介绍使用 Docker 设置基本数据科学环境的步骤。
为什么我们会考虑使用 Docker?Docker 允许数据科学家为他们的工作创建隔离且可重现的环境。使用 Docker 的一些主要优势包括:
任何 Docker 环境的起点都是 Dockerfile。此文本文件包含有关生成 Docker 映像的说明。
让我们为 Python 数据科学环境创建一个基本的 Dockerfile,并将其保存为不带扩展名的“Dockerfile”。
# Use official Python image
FROM python:3.9-slim-buster
# Set environment variable
ENV PYTHONUNBUFFERED 1
# Install Python libraries
RUN pip install numpy pandas matplotlib scikit-learn jupyter
# Run Jupyter by default
CMD ["jupyter", "lab", "--ip='0.0.0.0'", "--allow-root"]
这个Dockerfile使用官方的Python镜像,并在其上安装了一些流行的数据科学库。最后一行定义了在启动容器时运行 Jupyter Lab 的默认命令。
现在我们可以使用以下命令构建映像:docker build
docker build -t ds-python .
这将创建一个基于我们的 Dockerfile 标记的图像。ds-python
生成映像可能需要几分钟时间,因为所有依赖项都已安装。完成后,我们可以使用 .docker images
构建映像后,我们现在可以启动一个容器:
docker run -p 8888:8888 ds-python
这将启动 Jupyter Lab 实例,并将主机上的端口 8888 映射到容器中的 8888。
现在,我们可以在浏览器中导航到 Jupyter 并开始运行笔记本!localhost:8888
Docker 的一个关键优势是能够跨环境共享和部署映像。
要将图像保存到 tar 存档,请运行:
docker save -o ds-python.tar ds-python
然后,可以通过以下方式将此压缩包加载到安装了Docker的任何其他系统上:
docker load -i ds-python.tar
我们还可以将映像推送到 Docker 注册表(如 Docker Hub),以便在组织内公开或私下与其他人共享。
若要将映像推送到 Docker 中心,请执行以下操作:
docker login
docker tag ds-python yourusername/ds-python
docker push yourusername/ds-python
映像现在托管在 Docker Hub 上。其他用户可以通过运行以下命令拉取映像:ds-python
docker pull yourusername/ds-python
对于私有仓库,您可以创建组织并添加用户。这允许您在团队中安全地共享 Docker 映像。
要在另一个系统上加载并运行 Docker 映像,请执行以下操作:
ds-python.tar
docker load -i ds-python.tar
docker run -p 8888:8888 ds-python
localhost:8888
就是这样!ds-python 映像现在可以在新系统上使用了。
这为您提供了使用 Docker 设置可重现的数据科学环境的快速入门知识。需要考虑的一些其他最佳做法:
我希望这个介绍对您有所帮助。Docker为简化和扩展数据科学工作流程提供了大量可能性。
原文链接:创建简单的 Docker 数据科学映像 (mvrlink.com)