新手的第一只“口袋程序”:用Python写个小工具,再用Docker把它带走
很多新手第一次接触 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 做一个能在本地跑通的小工具,再用一张短构建文件打包成镜像,最后用两条命令完成构建和运行。工具不在大,而在顺手;流程不在复杂,而在每一步都能验证。把这条主线走通,再学更复杂的部署就会轻松很多。
- 点赞
- 收藏
- 关注作者
评论(0)