Software-Installation
fpm .deb 包 docker 依賴項
我用fpm創建了一個簡單的
.deb
包。該軟體包非常基本,它只是執行一個docker-compose文件(有關軟體包描述,請參閱我的其他問題)。我試圖指定包需要docker和docker-compose:
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
我在這裡做錯了什麼?
包依賴關係是包名稱,而不是二進製文件。
對於
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
.