正在学习 docker,
写了个小程序用来分析日志 可以接受参数来限制行数 ./log.py --limit=100 --log-file=apache.log
将 log.py 打包到 docker 里后,
docker run --mount source=/test,target=/app --log-file=apache.log --limit=100
就会提示 unknown flag: --log- See 'docker run --help'.
看网上写的是要编辑 DOCKFILE,按网上说的添加了
ENTRYPOINT ["python3", "log.py"] CMD [""]
似乎还是不行
1
x66 2019-11-18 10:07:24 +08:00
|
2
amrnxcdt 2019-11-18 10:24:28 +08:00
|
4
x66 2019-11-18 10:32:58 +08:00
@ladypxy #3 你可以把变量通过 environment 在 docker run 的时候传进去,然后 shell 文件里面变量直接读取容器环境变量
|
6
ladypxy OP @x66 还有一个问题,py 文件在 docker 里,但是 py 要读取的日志在 host 上,这种情况下 dockerfile 怎么写?
|
8
XSG 2019-11-18 11:20:47 +08:00
你的 run 命令里面镜像参数都没有,怎么执行?
--log-file 被识别成 docker run 的参数了 |
9
luckyrayyy 2019-11-18 11:22:37 +08:00
1、写成配置文件
2、写成环境变量 |
10
yangyaofei 2019-11-18 12:45:10 +08:00
ARGV 也行貌似, 但是环境变量最好,在 docker-compose 里面用起来很爽
|
11
ladypxy OP @luckyrayyy 这样写了貌似不行啊
ENV log-file=apache.log limit=100 ENTRYPOINT ["python3", ""log.py"] 运行就提示 docker run --mount source=/test,target=/app --log-file=apache.log --limit=100 unknown flag: --log-file |
12
taolu 2019-11-18 13:41:10 +08:00
@ladypxy #11 docker run --mount source=/test,target=/app --env log-file=apache.log --env limit=100
|
15
taolu 2019-11-18 14:12:23 +08:00
|
17
ladypxy OP |