使用Podman运行PostgreSQL容器时遇环境变量配置错误求助
问题分析与解决方法
问题根源:命令参数顺序错误。Podman
run命令的正确格式是podman run [运行选项] 镜像标识 [容器内执行命令],你把镜像ID4d8f13d97fae放在了--name、-e等选项前面,导致这些配置选项被当成了容器启动时要执行的内部命令,而非Podman的启动参数。因此PostgreSQL容器初始化时完全没读取到你设置的环境变量,触发了密码未指定的错误。正确启动命令:将镜像ID移到所有选项之后:
podman run --name base \ -e POSTGRES_USER=base \ -e POSTGRES_PASSWORD=base \ -e POSTGRES_HOST_AUTH_METHOD=trust \ -p 5432:5432 \ 4d8f13d97fae
- 可选优化:如果要指定具体版本(比如14),直接使用镜像名代替ID会更直观,避免ID混淆:
podman run --name base \ -e POSTGRES_USER=base \ -e POSTGRES_PASSWORD=base \ -e POSTGRES_HOST_AUTH_METHOD=trust \ -p 5432:5432 \ docker.io/library/postgres:14
内容的提问来源于stack exchange,提问作者themean
相关产品推荐
相关产品推荐

