关于docker-compose启动elasticsearch:7.17.29报"permission denied": unknown错误解决

关于docker-compose启动elasticsearch:7.17.29报"permission denied": unknown错误解决

问题:

docker-compse up -d 启动报错

Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: container_linux.go:329: starting container process caused "permission denied": unknown

但是,加上参数 privileged ,错误立马消失,真是服了,又不让用这个参数。

问题解决:

docker-compose.yml加上这个

js 复制代码
    security_opt:
      - seccomp:unconfined          # 关键:禁用 seccomp 过滤,解决 permission denied
    cap_add:
      - IPC_LOCK                    # 允许内存锁定
      - SYS_RESOURCE                # 允许调整资源限制(nofile, memlock)

然后给文件赋权:

js 复制代码
chmod g+rwx /data/777/es/{data,logs,config}
chgrp 0 /data/777/es/{data,logs,config}

当然更安全的是

方案 1:使用自定义 seccomp 配置(最安全)

原理:创建一个自定义的 seccomp 配置文件,只允许 Elasticsearch 必要的系统调用,而不是完全禁用 seccomp。

步骤

  1. 创建自定义 seccomp 配置文件 elasticsearch-seccomp.json
  2. 在 docker-compose.yml 中引用该文件

配置示例

yaml 复制代码
security_opt:
  - seccomp:./elasticsearch-seccomp.json
相关推荐
帷幕落秋4 分钟前
# 实验:Nginx 日志自动轮转(logrotate)
linux
Java.熵减码农12 分钟前
MySQL 远程连接故障排查全记录(Linux + Docker + Navicat)
linux·mysql·docker
夏炳辉.16 分钟前
零基础Linux PostgreSQL(psql)从安装到集群高可用全套学习大纲
linux·学习·postgresql
Horn Still Sounds29 分钟前
【Linux 系统编程】IPC 进程间通信全解:管道、有名管道与信号
linux·运维·服务器
xiaoye-duck37 分钟前
《Linux 网络编程》应用层自定义协议(一):序列化、sk_buff 与粘包半包处理
linux·网络
郭老师-嵌入式41 分钟前
arm linux 移植 udhcp 与 使用
linux·服务器·arm开发
代码终究输给规则43 分钟前
MATLAB r2026a 安装包和安装教程
linux·运维·服务器
临岸草惊风.44 分钟前
简单VASP计算INCAR设置(结构优化OPT、静态自洽SCF、能带BAND、态密度DOS)
linux·dft
钟良堂1 小时前
Ubuntu 20.04 部署 ORB_SLAM3 完整流程与踩坑总结
linux·运维·ubuntu
张小姐的猫1 小时前
【Linux】网络编程 —— 手动部署 & 测试内网穿透
linux·运维·服务器·网络·tcp/ip