Skip to content

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

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

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions