首页 > 解决方案 > 由于 LoadError: libpcap.so.0.8 导致创建数据库的 docker 问题

问题描述

嗨,我在 docker 中创建数据库时遇到问题。

我试图创建一个数据库:

docker-compose run snort_web_interface bundle exec rake db:create db:migrate

我有一个错误。

LoadError:libpcap.so.0.8:无法打开共享对象文件:没有这样的文件或目录 - /box/gems/pcaprub-0.13.0/lib/pcaprub_c.so

docker-compose up 正在运行。

我用这个脚本安装包、gem 等:

#!/bin/bash

apt-get update
apt-get -qq -y install libpq-dev
apt-get -qq -y install nodejs
apt-get -qq -y install libpcap-dev


bundle check || bundle install

if [ -f tmp/pids/server.pid ]; then
    rm tmp/pids/server.pid
fi

bundle exec rails s -b 0.0.0.0 -p 3000

知道如何解决吗?Docker 运行良好,只有一个问题是 libpcap 库。

标签: ruby-on-railsdockerubuntulibpcap

解决方案


看起来所需的库之一缺少依赖项或突出了所需的文件。

在您的情况下,找不到此文件:pcaprub_c.so 我在 Redhat 发行版中多次看到此问题,并且能够分两步解决:

1)找到缺少文件的包的名称。在 Redhat/Cntos 中,您运行以下命令:

 sudo yum whatprovides '*filename'

对于基于 Debian 的发行版,建议使用快速谷歌搜索:

dpkg -S filename(在你的情况下是 pcaprub_c.so)

一旦您知道导致问题的软件包的名称,您只需删除并重新安装或仅安装:

sudo apt-get install blah-blah-package. 

对于 redhat/centos..等:

 sudo yum install blah-blah-package. 

推荐阅读