当我尝试使用橡胶进行部署时,收到以下错误:
The following packages have unmet dependencies:
** [out :: staging.xxx.com]
** [out :: staging.xxx.com] libapache2-mod-passenger : Depends: passenger (= 1:5.0.8-1~trusty1) but it is not going to be installed
** [out :: staging.xxx.com]
** [out :: staging.xxx.com] E
** [out :: staging.xxx.com] :
** [out :: staging.xxx.com] Unable to correct problems, you have held broken packages.
我该怎么做才能解决这个问题?
答案 0 :(得分:3)
同样的事发生在我身上。
我尝试修补像@Phil这样的版本号码,在我的rubber-passenger.yml
文件中根据https://oss-binaries.phusionpassenger.com/apt/passenger/dists/trusty/main/binary-amd64/Packages随意和逐步更改它们,然后运行cap <alias> rubber:install_packages
。这太可怕了,就在这里:
# passenger_version: '1:5.0.10-1~`lsb_release -sc`1' # fail
# passenger_version: '1:5.0.11-1~`lsb_release -sc`1' # fail
# passenger_version: '1:5.0.13-1~`lsb_release -sc`1' # fail
# passenger_version: '1:5.0.14-1~`lsb_release -sc`1' # fail
# passenger_version: '1:5.0.15-1~`lsb_release -sc`1' # fail
# passenger_version: '1:5.0.16-1~`lsb_release -sc`1'
# passenger_version: '1:5.0.18-1~`lsb_release -sc`1'
# passenger_version: '1:5.0.19-1~`lsb_release -sc`1'
# passenger_version: '1:5.0.20-1~`lsb_release -sc`1'
# passenger_version: '1:5.0.21-1~`lsb_release -sc`1'
# passenger_version: '1:5.0.22-1~`lsb_release -sc`1'
# passenger_version: '1:5.0.23-1~`lsb_release -sc`1'
# passenger_version: '1:5.0.24-1~`lsb_release -sc`1'
# passenger_version: '1:5.0.25-1~`lsb_release -sc`1'
# passenger_version: '1:5.0.26-1~`lsb_release -sc`1'
# passenger_version: '1:5.0.27-1~`lsb_release -sc`1'
我厌倦了,刚删除了版本号。那很有效。现在roles
rubber-passenger.yml
中的roles:
passenger:
# packages: [apache2-mpm-prefork, apache2-prefork-dev, libcurl4-openssl-dev, libapache2-mod-xsendfile, [libapache2-mod-passenger, "#{passenger_version}"]]
packages: [apache2-mpm-prefork, apache2-prefork-dev, libcurl4-openssl-dev, libapache2-mod-xsendfile, libapache2-mod-passenger]
rolling_restart_port: "#{passenger_listen_port}"
web_tools:
rolling_restart_port: "#{web_tools_port}"
规范看起来像这样:
wkhtmltox-0.12.2.1
答案 1 :(得分:0)
对我而言,它帮助将第一行rubber-passenger.yml改为
cap rubber:install_packages
(更改版本号是什么意思)
然后又像
{{1}}