共计 1810 个字符,预计需要花费 5 分钟才能阅读完成。
明天在某云上新购一台云服务器,发现曾经有了 CentOS8.2 官网镜像可选,出于对陈腐事物的好奇,我决定开始采纳 CentOS8.2,即便我还没有为它的新个性做好筹备。
我的利用次要以单机版容器为主。因而,服务器启动的第一件事就是装置 Docker。可怜的事件产生了,我的 Docker 利用没有像 CentOS7 那样如期 running 起来。
花了大量的工夫排查,才找到一丝线索:CentOS8 以上的版本默认曾经装置一个等同于 Podman 的容器解决方案。
两个容器解决在一起工作,互相打架的事件必然会产生。出于长治久安的考量,明天整个下午我开展了对 Podman 的钻研,失去了如下的论断,心愿这些论断可能让大家少走一点弯路。
Podman 与 Docker 哪个好?
对于这种问题,我想没有粗浅的实际是无奈得出结论的。所以就我集体来说,只能从各种业余博客和论坛中寻找答案。
我发现 Podman 中文相干的材料非常少,同理,评估它的博客就更少了,倒是有一篇十分吸人眼球的文章,例如《Docker 大势已去,Podman 万岁》。但认真浏览它,却没有特地有价值的比照,齐全是一种主观的表白。因而,咱们不要被别人的文章所疏导(误导)而造成一种偏见。
Podman 是 RedHat 为了抢占容器规范的一种策略产品,这就是我的认识。
Podman 兼容 Docker 吗?
大部分是兼容的,例如:
1. 能够间接应用 Docker 镜像
2. 命令十分类似
如果你十分思念 docker 命令,甚至能够给 Podman 设置别名为 docker:
echo "alias docker=podman" >> .bashrc
source .bashrc
Podman 镜像
默认镜像库
文件 /etc/containers/registries.conf 是设置镜像地址配置文件,默认会搜寻 [‘registry.access.redhat.com’, ‘registry.redhat.io’, ‘docker.io’, ‘quay.io’]
等几个镜像库。
不过,这几个镜像库下载速度十分慢,能够说是根本无奈顺利的将镜像拉下来。
所以,须要批改批改镜像库配置文件,也就是大家说的 镜像减速 计划。
镜像减速
只需 4 个步骤实现镜像减速:
1. 改名并备份好文件:/etc/containers/registries.conf
2. 再新建一个空的 registries.conf 文件,插入如下内容
unqualified-search-registries = ["docker.io"]
[[registry]]
prefix = "docker.io"
location = "******.mirror.aliyuncs.com"
3. 批改 location
- 网易:https://hub-mirror.c.163.com/
- 阿里云:https://< 你的 ID>.mirror.aliyuncs.com
- 七牛云加速器:https://reg-mirror.qiniu.com
4. 保留
Podman Compose
Podman Compose 等同于 Docker Compose,是用于固化容器运行参数以及协调容器之间的关系的一种较为简单的计划。
应用如下的命令,装置 Podman Compose,并依据本人的爱好设置别名(如果依然忘不了 docker)
pip3 install podman-compose
echo "alias docker-compose=podman-compose" >> .bashrc
source .bashrc
Podman 外网
如果以普通用户运行容器,此容器默认无奈被外网拜访,为了防止不必要的麻烦,倡议以 root 用户创立并运行容器。
另外,run 容器的时候,请勿应用 -p 0.0.0.0:9090:80
这种端口映射形式,它会导致容器无奈被外网拜访。如果采纳失常的端口映射形式-p :9090:80
,就没有任何问题。
#无奈被外网拜访
sudo podman run --name phpmyadmin --restart=always -itd -p 0.0.0.0:9090:80 -e
PMA_HOST=10.88.0.1 phpmyadmin/phpmyadmin
#能够被外网拜访
sudo podman run --name phpmyadmin --restart=always -itd -p 9090:80 -e
PMA_HOST=10.88.0.1 phpmyadmin/phpmyadmin
创作不易,欢送探讨,感激反对!