Cron的作业在docker集装箱内执行Flask / Python函数?
我想在Docker容器之外使用一个cron作业来在Docker容器中执行一个Python / Flask函数。
有可能吗?
只是做docker exec
并不这样做,我相信Flask在允许访问函数方面可能有一些限制。
还是有更好的select?
这里是main.py
的示例代码我希望cron作业在docker容器中运行的main.py中执行getThisFunction()
from flask import Flask app = Flask(__name__) @app.route('/') def hello(): return "Hello World!" @routes.route('/getThisFunction', methods=['GET', 'POST']) def getThisFunction(): return "foobar" if __name__ == '__main__': app.run()
我想要像下面的cron作业(不完全相似):
26 08 * * * docker exec c78ddbed4ad9 {some stuff to execute getThisFunction() in main.py}
你可以暴露瓶子url到内部networking,如你的docker烧瓶地址是http://10.0.0.2/myflaskapp
现在你可以使用curl
调用cronjob调用这个http页面。