docker启动报错 library initialization failed - unable to allocate file descriptor table (core dumped) 解决

解决Docker容器libraryinitializationfailed:ulimit-n配置调整
文章讲述了如何解决Docker启动时遇到的libraryinitializationfailed错误,主要原因是ulimit-n句柄不足。作者提供了在宿主机设置ulimit-n为65536,并在docker-compose配置文件中增加ulimits来确保容器有足够的句柄资源,最后强调了重启容器的必要性。

docker启动报错 library initialization failed - unable to allocate file descriptor table (core dumped),

一般情况是ulimit -n 句柄问题,首先在宿主机执行ulimit -n 查看具体数量,如果是1024则需要调大一些,我这里设置的值为65536。
在/etc/profile增加:

ulimit -n 65536

执行source /etc/profile 刷新配置

然后在启动容器时增加ulimit配置,我这里使用的是docker-compose,我的配置如下:

 hbase:
    image: hbase:2.4.15-slim
    #下方为ulimit配置soft和hard的大小
    ulimits:
      nofile:
        soft: 65536
        hard: 65536
    container_name: hbase
    hostname: master
    restart: always
    logging:
      driver: "json-file"
      options:
        max-size: "500m"
    volumes:
      - ${HBASEDATA}/hbase-data:/data/hbase-data
      - ${HBASEDATA}/zookeeper-data:/data/zookeeper-data
    environment:
      - TZ=Asia/Shanghai
    #使用root
    privileged: true

修改之后清除之前容器,这一步很重要,然后重新启动容器即可。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值