随着各大龙头企业对docker的打压,docker在逐渐死亡,尤其是k8s宣布完全脱离docker之后。因此我也尝试了一番 用podman来无损替代docker服务。
- 卸载 docker
sudo apt-get purge docker*
- 安装 podman
sudo apt-get install podman podman-docker
- 添加环境变量
export DOCKER_HOST="unix:$XDG_RUNTIME_DIR/podman/podman.sock"
使非root用户在执行原版 docker-compose的时候有权限。 -
添加仓库
/etc/containers/registries.conf
在 /etc/containers/registries.conf 中添加下面内容
[registries.search]
registries = ['i2kldsde.mirror.aliyuncs.com','docker.io']
- 当前用户添加到root组,使docker-compose命令不报错
sudo usermod -aG root $USER
到这里基本上就结束了。 可以直接使用docker命令和docker-compose(如果以前装有) 命令了。
PS
- 登录方式:
podman login docker.io
需要带上host名。
安装 podman-compose
sudo pip3 install podman-compose
可以添加 alias docker-compose='podman-compose'
- 如果没有 podman-docker 包则需要执行下述操作
sudo ln -s /run/podman/podman.sock /var/run/docker.sock
sudo ln -s /usr/bin/podman /usr/bin/docker