我现在是用 Fedora 部署 podman 和 docker 比,podman 带来了
[Unit]
Description=mqtt broker server
After=network-online.target
Wants=network-online.target
Before=shutdown.target
[Container]
HostName=mqtt-broker
AutoUpdate=registry
Image=docker.io/eclipse-mosquitto:latest
Network=macvlan.network
PodmanArgs=--mac-address XX:XX:XX:XX:XX:XX
Volume=/srv/docker/root/volumes/mqtt/data:/mosquitto/data
Volume=/srv/docker/root/volumes/mqtt/config:/mosquitto/config
Volume=/srv/docker/root/volumes/mqtt/log:/mosquitto/log
[Service]
Restart=always
[Install]
WantedBy=multi-user.target
然后容器就以一个 systemd 的服务的形式运行起来了。
![]() |
1
gococonut 3 天前
编排方便吗?
|
2
jamos 3 天前 ![]() docker+portainer 很方便的
|
3
mbeoliero123 3 天前
使用 systemd 管理容器 daemon (quadlet)
楼主这有管理微服务吗?最近有这种需求 |
4
kapr1k0rn 3 天前
gui 不是有 podman desktop 吗
|
![]() |
6
vergilgao OP @kapr1k0rn 我其实是指的是 nas 系统集成的 webui 不是 desktop 也不是 portainer/dockerman 这种。从我目前使用的感受来说,webui 配置好之后,生成 quadlet 文件然后交给 systemd 来运行更符合 podman 的设计哲学。
|
![]() |
7
COW 3 天前
进程多了感觉不太好管理,由于是无 daemon ,比如某些 systemd 进程关了,用 podman ps 就查不到了,缺个好用的 工具支持 systemctl + podman ps 筛选的
|
8
hefish 3 天前 ![]() 大家用我推荐, 我还是继续 docker 。
|
9
hwdq0012 3 天前
没看到心动的点,好像 nvidia 驱动有限制 rootless
有人在上面跑 ai 训练模型吗, 和 docker 用 nvidia-docker2 比有什么区别 还有他的容器镜像方案是什么 ,docker 可以用 harbor 做 private registry ,Podman 是用什么 |
10
w568w 3 天前
我觉得 Quadlet 不太好的地方:
1. 从 Yaml 换成了语法表达力更弱的 ini-like ; 2. 不是 systemd 第一方支持,依然需要开机运行 generator 来生成 .service 文件; 3. 因为强行贴近 systemd 的 ini 配置风格,原本一个 compose.yaml 能配置完的服务栈和网络,现在必须得七八个文件。 我自己的话还是主要用 compose.yaml + podman-compose 来跑。只有少数依赖项不复杂且固化的服务(比如系统全局都要用的代理软件 image ),才考虑写成 quadlet 来开机自启。 |
12
infinityv 3 天前 via iPhone
dockerd 不也是 systemd 管理的吗
|
![]() |
14
cheng6563 3 天前
裸 pod 不套层 deployment 真的能用吗
|
![]() |
15
vergilgao OP @infinityv 不是一个概念,dockerd 是 docker 的 daemon ,podman 没有 daemon ,这里说的 systemd 管理 podman 的 daemon 其实是 systemd 直接作为 container 的 daemon
|
![]() |
16
vergilgao OP @cheng6563 家用肯定不可能用 k8s ,k3s 的话,我觉得还不如直接用 podlet 让 systemd 自己来了。CoreOS 那一套对于家用来说也是过于复杂了。所以我觉得直接套一个好用的 webui 管理 quadlet 文件,反而是一个非常优秀的 nas 上 GUI 容器化的方案。
|
![]() |
17
Geon97 3 天前
其实理论上来讲,podman 比 docker 相对更安全一些
|
18
66z 3 天前 ![]() 人生苦短,我用 Docker
|
19
yannxia 3 天前 ![]() 入门用户体验起来没什么区别
重量用户可能都去用 kube ,不太关心底下了 大概就是那种重度使用单机的会用,那么确实范围太小了 |
20
yayoi 2 天前 ![]() 以前用过,podman-compose 和 docker compose 有些行为是不一致的,现在大部分镜像文档还是以 docker 为准.podman 很难用.至于 rootless 之类的特性对于个人使用没啥大用处.但是企业都用 k8s.所以 podman 是个尴尬的东西,个人是没有动力去用这个的
|
21
cslive 2 天前
cockpit 管理 podman ,都是一家出的
|
22
chenluo0429 2 天前 via Android
我对 systemd 过敏,让我用别人写好的现成服务可以,让我自己写配置,我就十分不爽
|
![]() |
23
yuhangch 2 天前
@chenluo0429 交给 AI 呗
|
24
cryboy007 2 天前
公司用什么我就用什么。个人就用自己熟悉的.都是工具老比来比去的没意思
|
![]() |
25
weijancc 2 天前
无 daemon 这玩意就不值得吹
|
26
cyp0633 2 天前
起码不会把我的 nftables 规则搞乱
|
![]() |
27
SakuraYuki 2 天前
觉得他好用的不需要 gui ,需要 gui 的感受不出区别
|
![]() |
28
kennylam777 2 天前
都是 k8s 能完成的東西, 唯一要 systemd 的只有 kubelet, k3s control-pane 的話可能還有 etcd/api-server, DHCP 方面是配 multus 就能完成的東西
pod 在 docker compose 上作用不明顯, 只是一堆共用 network 的 containers, 但 docker 本來是 OCI 的能被 k8s 調用成 pod 的樣子 而且 k8s 現在配合的 container engine 是 containerd, 至少這東西和 docker 有也有 nvidia container toolkit 等大廠 GPU 的支持 我仍然覺得直接學 k3s 比較有用 |
![]() |
29
anubu 2 天前
拿来玩还是挺不错的,也能扩展对容器生态的认识。不过从技能性价比角度,nerdctl/containerd 感觉更好一些。向下和 docker/docker compose 几乎无缝兼容,向上维护 kubelet/containerd 这一套也能复用经验。
daemon 这个问题挺难说,有时候觉得 docker daemon 还挺好用的。在本地 vscode 编辑完 compose 文件,直接 docker context 连接到远程 ssh 暴漏的 docker daemon 就可以启动服务。相比拷贝 compose 文件到服务端,方便很多。当然,无 daemon 时,vscode remote ssh 也能应付这些场景。 |
30
zed1018 2 天前
我感觉有点鸡肋,属于是生产环境有更好的方案,本地开发也用不上的功能。
|
33
yanqiyu 2 天前
对我来说 podman 真正的不可替代的特性是借助 fork-exec 的模型支持 pass fd ,然后就可以让容器也能走 socket activation 来响应请求。
这样一些容器甚至了一 network=none 也能提供网络服务 |
![]() |
34
yb2313 2 天前
没被坑过不知道痛, 喜欢折腾就玩吧, 觉得折腾有意思当然觉得好, 我自己的经验是以后再也不乱折腾了, 坑死我了
|
35
yanqiyu 2 天前
@anubu podman.socket 也可以启动一个 daemon (行为也很大程度上兼容 docker 的 socket 我记得),并且 podman system connection [add,list...] 可以添加直接暴露的 http 或者 ssh endpoint ,这样在远程机器上 podman -c <remote> ... 就等价于在远程执行了
|
![]() |
36
0312birdzhang 2 天前
等一条帖子:podman 太坑了,换回了 docker
|
37
shcsc 2 天前
家里的 Linux ,我就是用 podman 跑服务
|
![]() |
38
Proposal 2 天前
没有看到对 docker 的替代性...
|
39
pulutom40 2 天前 via iPhone
说得好,个人使用继续 docker ,珍爱生命,远离折腾
|
40
githmb 2 天前
这东西离线安装后运行不了啊,配置太多了,经常缺东西,找齐也全是启动问题
|
41
DefoliationM 2 天前 via Android
用过一段时间,但是备份比较麻烦,最后还是 terraform+k8s 了,方便管理配置。
|
42
skvi 2 天前 via Android
尽管如此,但是我还是 docker ,又不是不能用,主要是 compose 对我来说已经足够简单、便捷。没有折腾的理由哈哈
|
43
skvi 2 天前 via Android
btw qnap
|
![]() |
44
anubu 2 天前
@COW vscode 主要用于 yaml 文件编辑和调起 wsl 当终端用。容器插件用的很少,偶尔看看 docker 日志,没有 nerdctl 和 vscode 集成使用的经验。
|
![]() |
45
WhatTheBridgeSay 2 天前
工程实践的话我还是优选 docker ,除了捏着鼻子给 ufw 打补丁不然 ufw 创建的主机防火墙规则会被绕过以外没有缺点。
podman 很好我也知道,但是还是仅适合自己玩,docker 最有价值的从来不在于装在你机器里的那个二进制和 daemon ,而是 docker hub |
46
xycost233 2 天前
一堆 compose ,切换成本有点高了。。不太干试
podman 支持 macvlan 网络么,能使用 traefik 自动代理不 |
47
johnniang 2 天前 via Android
最近我更喜欢用 Docker Swarm 了。
|
48
witherzuo 1 天前 via Android
podman 什么都好,但在 Windows 和 macOS 上一直有个问题,podman pull 拉取镜像时不会显示流式传输进度,Linux 上正常……
|
![]() |
49
wweir 2 小时 26 分钟前
还是更喜欢 nerdctl 一些。
docker 作为事实标准,并且整体往 k8s 上迁移的时候,另外学一套交互命令的成本就很高了。 这时候,兼容 docker 才是第一要义,其它都属于花头 |