Dockerfile制作运行python的镜像

Dockerfile制作运行python的镜像

  • 自定义镜像
    • python逻辑
    • Dockfile
    • docker build
    • docker run
    • 查看日志
    • 镜像导出

自定义镜像

python逻辑


import sys
import time
import os
import sched
import datetime
import logging

# 此处必须,声明之后才可以通过docker logs 看到日志打印
logging.basicConfig(stream=sys.stdout, level=logging.DEBUG)

# 初始化sched模块的scheduler类  
# 第一个参数是一个可以返回时间戳的函数,第二个参数可以在定时未到达之前阻塞。  
schedule = sched.scheduler(time.time, time.sleep)

# 被周期性调度触发的函数  
def execute_command(cmd, inc):
    logging.info(datetime.datetime.now())
    schedule.enter(inc, 0, execute_command, (cmd, inc))


def main(cmd, inc=10):
    # enter四个参数分别为:间隔时间、优先级(用于同时间到达的两个事件同时执行时定序)、被调用触发的函数、给该触发函数的参数(tuple形式)  
    schedule.enter(0, 0, execute_command, (cmd, inc))
    schedule.run()

if __name__ == '__main__':
    main("ping www.baidu.com", 60)

Dockfile

FROM python:3.6.4

RUN mkdir /app

copy quartz.py /app

WORKDIR /app

CMD ["python","quartz.py"]

docker build

docker build -t python-test-1 .

docker run

运行镜像

docker run -d --name=python-test-1 python-test-1

查看日志

docker logs 

镜像导出

# 例如: docker save -o 要保存的文件名 要保存的镜像
docker save -o python-test.tar python-test-1

你可能感兴趣的:(k8s)