Skip to content

[BUG]计划任务疑似执行权限问题 #4344

@JAINKRE

Description

@JAINKRE

联系方式

No response

1Panel 版本

v1.10.2-lts

问题描述

使用python写了一个操作容器的版本,在终端中执行正常,如下:
PixPin_2024-03-28_20-58-01

但是通过计划任务执行报错:

Command 'docker exec -it 50dd0c0b01b0 bash -c "cat /opt/gitlab/version-manifest.json"' returned non-zero exit status 1.

如下:
PixPin_2024-03-28_20-58-53

计划任务执行shell脚本命令如下:

sudo python39 /home/data/Jainkre_app/.JainkreScript/Jainkre_GitlabAutoDockerUpdate.py

这个错误疑似是执行权限不足导致的,想问计划任务是以什么权限运行的?尝试通过在sh脚本中调用python,如下:

#!/bin/bash

python_script="/home/data/Jainkre_app/.JainkreScript/Jainkre_GitlabAutoDockerUpdate.py"

python39 $python_script

依旧报错。已经设置了脚本权限为0777和执行权限chmod +x 以及所有者权限chmod u+x 因此,想了解是否为计划任务权限导致,感谢!

python脚本相关执行代码如下:
PixPin_2024-03-28_21-03-34

进入容器查看文件权限,如下:
PixPin_2024-03-28_21-30-10

同时,给python脚本指定root执行,代码如下;

bash_in_container = f'docker exec -u root -it {container_id} bash -c "cat /opt/gitlab/version-manifest.json"'
# 执行命令并获取输出
output = subprocess.check_output(bash_in_container, shell=True, text=True)

执行结果,依旧是终端中正常:
PixPin_2024-03-28_21-34-48

计划任务报上述错误:
PixPin_2024-03-28_21-33-04

重现步骤

/

期待的正确结果

No response

相关日志输出

No response

附加信息

No response

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions