数据科学中的Docker

前言

Docker开源以来,迅速风靡世界,对软件的开发、测试、部署、分发起到了很大变化。从logo也能看出来,docker就像一个集装箱一样,将软件打包分发,避免了“在我这运行没问题啊”的争吵。简单来说,docker以轻量化的尺寸,把操作系统、环境、依赖包、开发软件全都打包在一起,在一台新机器上可以快速、无损的复制出来。所以docker也用在云计算中作为基础调度单元。

不光对软件开发和,数据科学中也经常因为包的版本引发各种问题,掌握docker也成了数据科学家的必备技能。相比虚拟机,docker更加轻量。

基础概念

镜像 image

最近刚好又在看龙珠,其实一个镜像的概念特别像龙珠里的“万能胶囊”。

容器 container

容器就相当于“扔出去的万能胶囊”了,其本质是一个进程。另一方面,容器相当于实例化后的镜像。
例如linux中查看进程的命令ps(Process Status),查看容器的命令是docker ps

仓库 repository

仓库就是图中存放万能胶囊的盒子了。

基本使用

sudo docker build -f Dockerfile -t registry.cn-shenzhen.aliyuncs.com/yuetan/competition:01 .
docker run -v /Users/longxingtan/Repository/Competition-gogogo/earth/data:/tcdata registry.cn-shenzhen.aliyuncs.com/yuetan/competition:01
docker push registry.cn-shenzhen.aliyuncs.com/yuetan/competition:01

拉取镜像:

docker pull registry.cn-shanghai.aliyuncs.com/tcc-public/pytorch:1.4-cuda10.1-py3

调试

进入交互式容器

docker run -i -t registry.cn-shanghai.aliyuncs.com/tcc-public/pytorch:1.4-cuda10.1-py3 /bin/bash

Cuda version: cat /usr/local/cuda/version.txt
Cudnn version: nvcc --version
pip install --upgrade pip
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow-gpu==2.2.0

进阶

GPU支持

对于数据科学而言,GPU的支持必不可少。

docker run --gpus all -it registry.cn-

compose

进阶的使用首推compose了

Kubernetes

在云计算中,就是k8s了

阿里云中的使用

最近恰好水了一个天池的比赛,由于比赛需要docker提交,这里简单回顾一下,如何在天池比赛中提交。

  1. 创建阿里云代码仓库(https://www.aliyun.com/product/acr)
  2. 使用Dockerfile创建镜像,容器化后安装requirements.txt,提交至阿里云仓库
  3. 提交镜像

参考资料与阅读材料

  • Manning.Learn.Docker.in.a.Month.of.Lunches.2020.6
  • https://yeasy.gitbooks.io/docker_practice/
  • bilibili:数据科学家docker
  • https://zhuanlan.zhihu.com/p/19902938
  • https://zhuanlan.zhihu.com/p/147995194
  • https://www.oreilly.com/radar/where-programming-ops-ai-and-the-cloud-are-headed-in-2021/
  • 实际项目的docker打包应用
  • 本地代码通过dockerfile打包成镜像,也可以参加类似天池相关比赛
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YueTann

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值