目标:在 ubuntu:jammy docker 容器上安装 Puppet 6 代理来测试 Puppet 脚本。
我已经添加了 Puppetlabs 存储库并运行,apt-get update
但apt-get upgrade
仍然apt-get install puppet-agent
失败并出现错误“没有安装候选项”。
我遵循的说明:木偶指令
我究竟做错了什么?
复现说明
Dockerfile
FROM ubuntu:jammy
EXPOSE 80
RUN apt-get update
RUN apt-get upgrade -y
RUN yes| unminimize
RUN apt-get install apt-utils -y
# packages we need
RUN apt-get install unzip -y
RUN apt-get install wget -y
RUN apt-get install puppet -y
Docker 容器终端上的命令
root@6d2e2ea018b6:/# history
1 wget https://apt.puppet.com/puppet6-release-jammy.deb
2 dpkg -i puppet6-release-jammy.deb
3 apt-get update -y
4 apt-get upgrade -y
5 apt-get install puppet-agent
命令输出
root@6d2e2ea018b6:/# wget https://apt.puppet.com/puppet6-release-jammy.deb
--2023-06-07 11:59:24-- https://apt.puppet.com/puppet6-release-jammy.deb
Resolving apt.puppet.com (apt.puppet.com)... 52.222.139.62, 52.222.139.78, 52.222.139.20, ...
Connecting to apt.puppet.com (apt.puppet.com)|52.222.139.62|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 11702 (11K) [application/x-debian-package]
Saving to: 'puppet6-release-jammy.deb'
puppet6-release-jammy.deb 100%[=====================================================================================================>] 11.43K --.-KB/s in 0s
2023-06-07 11:59:24 (127 MB/s) - 'puppet6-release-jammy.deb' saved [11702/11702]
root@6d2e2ea018b6:/# dpkg -i puppet6-release-jammy.deb
Selecting previously unselected package puppet6-release.
(Reading database ... 10920 files and directories currently installed.)
Preparing to unpack puppet6-release-jammy.deb ...
Unpacking puppet6-release (6.0.0-23jammy) ...
Setting up puppet6-release (6.0.0-23jammy) ...
root@6d2e2ea018b6:/# apt-get update -y
Hit:1 http://ports.ubuntu.com/ubuntu-ports jammy InRelease
Get:2 http://ports.ubuntu.com/ubuntu-ports jammy-updates InRelease [119 kB]
Get:3 http://ports.ubuntu.com/ubuntu-ports jammy-backports InRelease [108 kB]
Get:4 http://ports.ubuntu.com/ubuntu-ports jammy-security InRelease [110 kB]
Get:5 http://apt.puppetlabs.com jammy InRelease [113 kB]
Get:6 http://apt.puppetlabs.com jammy/puppet6 all Packages [1316 B]
Get:7 http://apt.puppetlabs.com jammy/puppet6 arm64 Packages [1316 B]
Fetched 452 kB in 1s (417 kB/s)
Reading package lists... Done
root@6d2e2ea018b6:/# apt-get upgrade -y
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
root@6d2e2ea018b6:/# apt-get install puppet-agent
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Package puppet-agent is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package 'puppet-agent' has no installation candidate
出了什么问题?
可能重要的细节:我正在研究 M1 Macbook Pro。
答案1
puppet6-release-jammy.deb
不包含puppet-agent
但需要它。
puppet-agent
因此,请从您获得的地方下载并安装puppet6-release-jammy.deb
该软件包仅适用于 23.04 和 23.10,如您在软件包列表。因此升级到 23.04 也是一个选择。不知道是否可以将 23.04 版本安装到 20.04 中(依赖项列表似乎没问题)