fpm .deb 包 docker 依赖项

fpm .deb 包 docker 依赖项

我创建了一个简单的.deb氟PM。该软件包非常基本,它只是运行一个docker 撰写文件(请参阅我的其他问题这里用于包说明)。

我试图指定该包需要泊坞窗docker 撰写和:

fpm \
  -s dir -t deb \
  --deb-use-file-permissions \
  -p diagnosticator-0.1.0-1-any.deb \
  --name diagnosticator \
  --license agpl3 \
  --version 0.1.0 \
  --architecture all \
  --depends bash \
  --depends docker \
  --depends docker-compose \
  --description "Diagnosticator local app" \
  --url "https://diagnosticator.com" \
  --maintainer "Enrico Cocchi" \
  diagnosticator=/usr/bin/diagnosticator diagnosticator.1=/usr/share/man/man1/diagnosticator.1 docker-compose.yml=/usr/lib/diagnosticator/docker-compose.yml

但如果我尝试使用以下命令安装它sudo dpkg -i diagnosticator-0.1.0-1-any.deb

dpkg: dependency problems prevent configuration of diagnosticator:
 diagnosticator depends on docker; however:
  Package docker is not installed.
 diagnosticator depends on docker-compose; however:
  Package docker-compose is not installed.

即使我已经安装并为我的用户工作:

$ which docker
/usr/bin/docker

$ which docker-compose
/usr/local/bin/docker-compose

我在这里做错了什么?

答案1

包依赖项取决于包名称,而不是二进制文件。

对于docker,您可以通过运行来确定适当的包名称

dpkg -S /usr/bin/docker

对于docker-compose,您可能需要先创建自己的包,或者切换到相关包

您可能还想使用apt install ./diagnosticator-0.1.0-1-any.deb而不是安装软件包dpkg -i;这将尝试为您解决依赖关系。另请注意,您的包文件名应该是diagnosticator_0.1.0-1_all.deb.

相关内容