本文使用 Zhihu On VSCode 创作并发布
长话短说,勿喷:
podman 安装麻烦 ,文档没有 docker 好看,以 manjaro 为例:
podman:
pacman -S podman podman-compose
/etc/containers/registries.conf(拉镜像一直报错,google了半天才知道怎么解决)
# vim /etc/containers/registries.conf [registries.search] registries = ['docker.io'] [registries.insecure] registries = [] # Docker only [registries.block] registries = []
rootless(run一直报错,google了半天才知道怎么解决)
touch /etc/subuid touch /etc/subgid usermod --add-subuids 165536-231072 --add-subgids 165536-231072 happyxhw podman system migrate podman unshare cat /proc/self/uid_map
docker:
pacman -S docker docker-compose sudo systemctl start docker sudo systemctl enalbe docker usermod -aG docker happyxhw
对于开发环境而言,rootless 并不重要,能够快速启动、开机自启反而更重要,docker-compose 太好用了,podman-compose 并不能完全兼容 docker-compose,以 postgres 为例,我就想在本地部署一个能用的 postgres 数据库,要求:1、持久化数据;2、开机自启;3、配置固定,迁移方便。
version: "3" services: db: image: "postgres" restart: always container_name: "postgres" environment: - POSTGRES_USER=happyxhw - POSTGRES_PASSWORD=xxxxx - POSTGRES_DB=xxxxx ports: - "5432:5432" volumes: - data:/var/lib/postgresql/data volumes: data:
k8s 不使用 docker,完成不影响你本地使用 docker,本地使用 podman 的体验太差了。
综上:
- 对于一个服务开发人员,k8s 用不用 docker 几乎没有任何影响
- 本地开发,无脑 docker,配合 docker-compose 和 kompose 体验很好
- 对于生产环境如果不使用 k8s,可以考虑迁移 docker 到 podman,某种意义上 docker 确实日渐式微