新手的第一只“口袋程序”:用Python写个小工具,再用Docker把它带走

举报
你永远是我的寶貝 发表于 2026/10/29 17:08:49 2026/10/29
【摘要】 用一个计数小工具入门:先用Python写出能在本地跑通的程序,再用一张很短的Dockerfile打包成镜像,两条命令完成构建和运行,并避开新手常见的四个坑。

很多新手第一次接触 Python 和 Docker 时,会觉得两者离得很远:一个负责写代码,一个负责装程序。其实它们是一对很好的搭档。Python 把想法变成可以运行的小工具,Docker 再把小工具连同运行环境一起打包,让它在另一台电脑上也能原样跑起来。下面用一个计数小工具,把这条路完整走一遍。

一、写一个能跑的小工具

先不要追求功能复杂。做一个目标明确的程序:从指定数字开始,每次加固定步长,打印若干个数。把程序保存为计数程序文件,用 Python 自带的 argparse 接收起点、步长和个数,循环算出每个数并打印。

import argparse
parser = argparse.ArgumentParser(description="计数小工具")
parser.add_argument("--start", type=int, default=1)
parser.add_argument("--step", type=int, default=1)
parser.add_argument("--count", type=int, default=5)
args = parser.parse_args()
value = args.start
for _ in range(args.count):
    print(value)
    value += args.step

二、本机跑通,再谈打包

先在本机运行计数程序,传入起点 3、步长 2、个数 4,正常应依次输出 3、5、7、9。如果不对,先检查循环和参数,不要急着怀疑 Docker。本地跑不通的程序,打包后只会把问题藏得更深。

三、写一张很短的装箱清单

构建文件就是告诉 Docker 怎样做出一个可运行箱子的清单。对这个小工具,清单可以非常短:选一个较小的 Python 基础镜像,设定工作目录,复制计数程序文件,说明默认命令。

FROM python:3.12-slim
WORKDIR /app
COPY counter ./
CMD ["python", "counter"]

注意三点:基础镜像够用就好;工作目录要固定;默认命令不要把参数写死,留出运行时传参的空间。

四、构建并运行

在文件所在目录执行构建命令,给镜像起名并加上版本号 1.0;再运行容器,传入起点 1、步长 3、个数 4,并加上退出后自动清理的选项。成功后应看到 1、4、7、10。到了这一步,小工具就成了一个可以带走的“口袋程序”。

五、四个常见坑与 AI 配合

一是把缓存和临时文件都复制进镜像,可用忽略规则文件排除;二是改了代码却忘了重新构建,跑的还是旧镜像;三是把容器当成长期保存数据的虚拟机,对这个例子来说,用完即走才是常态;四是遇到报错就重装环境,其实多数报错来自目录不对、文件名拼错这类小问题,先逐行读报错更快。用 AI 工具帮忙时也一样:先说清需求,把完整报错和相关代码一起给它,再逐行核对它给出的命令,本地实际运行一次才算数。

总结一下:先用 Python 做一个能在本地跑通的小工具,再用一张短构建文件打包成镜像,最后用两条命令完成构建和运行。工具不在大,而在顺手;流程不在复杂,而在每一步都能验证。把这条主线走通,再学更复杂的部署就会轻松很多。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。