抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

cron笔记,包含cron不执行shell脚本的解决办法

也许shell脚本本身可以执行,但是cron中不能执行,需要像下面这样设置

cron-for-run-per-1h.cron
1
2
SHELL=/bin/bash 
0 * * * * . /etc/profile;/bin/sh /pathto/run.sh
run.sh
1
2
3
4
#!/bin/bash
LOGS_FILE="/pathto/logs/$(date "+%Y-%m-%d-%H-%M-%S").log"
cd /pathto
docker-compose up >> $LOGS_FILE 2>&1

最后设置到cron

run.sh
1
crontab /pathto/cron-for-run-per-1h.cron

个人docker配置备份

Dockerfile
1
2
3
4
5
6
FROM python:3.11
WORKDIR /bin/test
COPY ./requirements.txt ./
RUN pip install -r ./requirements.txt
ENTRYPOINT [ "python" ]
CMD [ "./test.py" ]
docker-compose.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
version: '3.8'
services:
enhanced-faas:
build:
context: ./
container_name: enhanced-faas
volumes:
- "./:/bin/test"
expose:
- 443,80
command: ./main.py
networks:
- nginx-proxy

networks:
nginx-proxy:
external: true

评论