Podman是一个无守护进程的容器引擎,用于在Linux系统上开发、管理和运行OCI容器。与Docker不同,Podman可以在无 root 模式下运行。
安装
sudo apt install podman
或者
sudo yum install podman
然后在/etc/containers/registries.conf
配置文件,做如下配置以便拉取镜像:
unqualified-search-registries = ["docker.io"]
[[registry]]
location = "docker.mirrors.ustc.edu.cn"
拉取镜像
随便拉取一个镜像,比如说:
podman pull egistry.cn-hangzhou.aliyuncs.com/qida/oracle-xe-11g
podman pull nacos/nacos-server
podman pull redis
podman pull minio/minio:RELEASE.2021-06-17T00-10-46Z-28-gac7697426
podman pull nginx
podman pull ubuntu:16.04
创建并启动容器
容器映射本地目录,那么本地目录应该存在。具体。
#!/bin/bash
podman pull nacos/nacos-server
podman pull redis
podman pull minio/minio:RELEASE.2021-06-17T00-10-46Z-28-gac7697426
podman images
rm -rf ~/.podman
mkdir -p ~/.podman/oracle-11g/data
mkdir -p ~/.podman/nacos/logs
mkdir -p ~/.podman/minio/data
mkdir -p ~/.podman/minio/config
podman stop oracle11
podman stop nacos
podman stop minio
podman stop redis
podman rm oracle11
podman rm nacos
podman rm minio
podman rm redis
podman run --name oracle11 -it -d -p 1521:1521 -v ~/.podman/oracle-11g/data:/data/oracle registry.cn-hangzhou.aliyuncs.com/qida/oracle-xe-11g
podman run --name nacos -d -p 8848:8848 --privileged=true -e JVM_XMS=512m -e JVM_XMX=2048m -e MODE=standalone -e PREFER_HOST_MODE=hostname -v ~/.podman/nacos/logs:/home/nacos/logs nacos/nacos-server:latest
podman run --name minio -d -p 9000:9000 -p 9001:9001 --net=host -e "MINIO_ACCESS_KEY=minioadmin" -e "MINIO_SECRET_KEY=minioadmin" -v ~/.podman/minio/data:/data -v ~/.podman/minio/config:/root/.minio minio/minio:RELEASE.2021-06-17T00-10-46Z-28-gac7697426 server /data --console-address ":9001" -address ":9000"
podman run --name redis -itd -p 6379:6379 redis
echo "ALL:"
podman ps -a
echo "RUNNING:"
podman ps
然后出了个错,有一个包没安装
ERRO[0002] could not find slirp4netns, the network namespace won't be configured: exec: "slirp4netns": executable file not found in $PATH
用apt -y install slirp4netns
或yum -y install slirp4netns
安上。最后podman ps
看到三个容器都启动了。不建议把许多东西装进一个容器里,不然一个炸了全得重启,另外镜像大也不好维护。
关掉容器
podman stop nacos redis minio
打开容器
restart
即使容器没开也能工作,它将把容器打开。
podman restart nacos minio redis
本文含有隐藏内容,请 开通VIP 后查看