[每周一更]-(第97期):认识Podman,并对比Docker

在这里插入图片描述

一、认识Podman

Podman 是一款开源的容器引擎,用于创建、运行和管理容器。它遵循 OCI(Open Container Initiative)标准,并与 Docker 兼容。Podman 的主要特点包括:

  • 无守护进程:Podman 无需运行守护进程,因此更加轻量级、安全且易于使用。
  • 与 Docker 兼容:Podman 可以运行 Docker 镜像和容器,并可以使用与 Docker 类似的命令行界面。
  • 模块化设计:Podman 采用模块化设计,可以与其他工具集成,例如 Buildah 和 Skopeo。
  • 支持多种平台:Podman 支持多种 Linux 发行版,以及 macOS 和 Windows。

1.安装Podman

Podman 的安装方法取决于您的操作系统。

在 Linux 上安装 Podman
  • 使用 dnf 包管理器
sudo dnf install podman

# 卸载
sudo dnf remove podman
  • 使用 yum 包管理器
sudo yum install podman

# 卸载
sudo yum remove podman
  • 使用 apt 包管理器
sudo apt-get install podman

# 卸载
sudo apt-get remove podman
在 macOS 上安装 Podman
  • 使用 Homebrew
# 安装podman
brew install podman

# 卸载podman
brew remove podman
从源代码安装Podman
  1. 下载 Podman 源代码:https://github.com/containers/podman/releases
  2. 解压源代码并进入解压目录
  3. 运行以下命令进行编译和安装:
./configure --prefix=/usr/local && make && sudo make install

# 卸载podman
sudo rm -rf /usr/local/lib/podman
sudo rm -rf /usr/local/bin/podman
在 Windows 上安装 Podman
  • 下载 Podman Windows 安装程序:https://podman.io/docs/installation
  • 运行安装程序并按照说明进行安装

初始化 Podman

在安装 Podman 之后,您需要初始化 Podman 机器。这将创建必要的容器存储目录

执行./docker-compose.yml up出错 ./docker-compose.yml:行1: services:: 未找到命令 ./docker-compose.yml:行3: postgres:: 未找到命令 ./docker-compose.yml:行4: image:: 未找到命令 ./docker-compose.yml:行5: container_name:: 未找到命令 ./docker-compose.yml:行6: environment:: 未找到命令 ./docker-compose.yml:行7: POSTGRES_USER:: 未找到命令 ./docker-compose.yml:行8: POSTGRES_PASSWORD:: 未找到命令 ./docker-compose.yml:行9: POSTGRES_DB:: 未找到命令 ./docker-compose.yml:行10: volumes:: 未找到命令 ./docker-compose.yml:行11: -: 未找到命令 ./docker-compose.yml:行12: -: 未找到命令 ./docker-compose.yml:行13: ports:: 未找到命令 ./docker-compose.yml:行14: -: 未找到命令 ./docker-compose.yml:行15: networks:: 未找到命令 ./docker-compose.yml:行16: -: 未找到命令 ./docker-compose.yml:行17: healthcheck:: 未找到命令 ./docker-compose.yml:行18: test:: 未找到命令 ./docker-compose.yml:行19: interval:: 未找到命令 ./docker-compose.yml:行20: timeout:: 未找到命令 ./docker-compose.yml:行21: retries:: 未找到命令 ./docker-compose.yml:行22: restart:: 未找到命令 ./docker-compose.yml:行26: sonarqube:: 未找到命令 ./docker-compose.yml:行27: image:: 未找到命令 ./docker-compose.yml:行28: container_name:: 未找到命令 ./docker-compose.yml:行29: depends_on:: 未找到命令 ./docker-compose.yml:行30: postgres:: 未找到命令 ./docker-compose.yml:行31: condition:: 未找到命令 ./docker-compose.yml:行32: environment:: 未找到命令 ./docker-compose.yml:行33: -: 未找到命令 ./docker-compose.yml:行34: -: 未找到命令 ./docker-compose.yml:行35: -: 未找到命令 ./docker-compose.yml:行36: -: 未找到命令 ./docker-compose.yml:行37: volumes:: 未找到命令 ./docker-compose.yml:行38: -: 未找到命令 ./docker-compose.yml:行39: -: 未找到命令 ./docker-compose.yml:行40: -: 未找到命令 ./docker-compose.yml:行41: -: 未找到命令 ./docker-compose.yml:行42: -: 未找到命令 ./docker-compose.yml:行43: ports:: 未找到命令 ./docker-compose.yml:行44: -: 未找到命令 ./docker-compose.yml:行45: networks:: 未找到命令 ./docker-compose.yml:行46: -: 未找到命令 ./docker-compose.yml:行47: ulimits:: 未找到命令 ./docker-compose.yml:行48: nofile:: 未找到命令 ./docker-compose.yml:行49: soft:: 未找到命令 ./docker-compose.yml:行50: hard:: 未找到命令 ./docker-compose.yml:行51: restart:: 未找到命令 ./docker-compose.yml:行53: networks:: 未找到命令 ./docker-compose.yml:行54: snoar_network:: 未找到命令 ./docker-compose.yml:行55: driver:: 未找到命令
11-01
执行 `./docker-compose.yml up` 提示“未找到命令”通常是因为执行方式有误,`docker-compose.yml` 是配置文件,非可执行文件,正确的执行命令应该是使用 `docker-compose` 命令来操作这个配置文件。以下是解决此问题的步骤和相关解释: ### 1. 确认 `docker-compose` 已安装 要确保系统中已经安装了 `docker-compose`,可以通过以下命令来检查: ```bash docker-compose --version ``` 如果提示命令未找到,需要安装 `docker-compose`。不同操作系统的安装方式不同,以 Ubuntu 为例,可以使用以下命令安装: ```bash sudo apt-get update sudo apt-get install docker-compose ``` ### 2. 使用正确的命令格式 正确的命令格式是 `docker-compose -f <配置文件路径> up -d`,如果配置文件名为 `docker-compose.yml` 且在当前目录下,可以直接使用 `docker-compose up -d`。示例如下: ```bash docker-compose up -d ``` 这里的 `-d` 表示在后台启动运行所有的容器。 ### 3. 检查配置文件语法 确保 `docker-compose.yml` 文件的语法正确。可以参考引用中的配置示例,例如: ```yaml version: '3.8' services: app: build: . environment: - APP_NAME=MyProductionApp - DEBUG=true - MODE=standalone ``` 或者 ```yaml version: "3.7" services: itsmc-ai: image: xxxxxx container_name: xxxx ports: - "5000:5000" volumes: - ./config.yml:/app/config.yml ``` ### 4. 检查文件路径和权限 确保 `docker-compose.yml` 文件存在于当前工作目录,或者在使用 `-f` 参数时指定了正确的文件路径。同时,要确保当前用户对该文件有读取权限。 ### 5. 其他常见 `docker-compose` 命令参考 可以根据需要使用以下常见的 `docker-compose` 命令: ```bash # 停止服务 docker-compose stop # 查看帮助 docker-compose -h # 启动所有容器-d 将会在后台启动运行所有的容器 docker-compose -f docker-compose.yml up -d # 停用移除所有容器以及网络相关 docker-compose down # 查看服务容器的输出 docker-compose logs # 列出项目中目前的所有容器 docker-compose ps # 构建(重新构建)项目中的服务容器 docker-compose build # 拉取服务依赖的镜像 docker-compose pull # 重启项目中的服务 docker-compose restart # 删除所有(停止状态的)服务容器 docker-compose rm # 在指定服务上执行个命令 docker-compose run ubuntu ping docker.com # 设置指定服务运行的容器个数 docker-compose scale web=3 db=2 # 启动已经存在的服务容器 docker-compose start # 停止已经处于运行状态的容器,但不删除它 docker-compose stop ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ifanatic

觉得对您有用,可以友情打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值