我一直试图弄清楚如何连接到mariadb容器时,使用podman-撰写,我一直收到一个错误。
以下是我所做的:
软件版本
podman version = 3.3.1
podman-compose version = podman-compose-0.1.7-2.git20201120.el8.noarch`docker-compose.yml
version: '3'
services:
db:
image: mariadb:latest
environment:
MARIADB_USER: user
MARIADB_PASSWORD: pass
MARIADB_DATABASE: testdb
MARIADB_ROOT_PASSWORD: rootpass
volumes:
- db_data:/var/lib/mysql当我使用:podman-compose up -d旋转这个容器时
然后尝试使用以下方法连接到此数据库:
podman exec -it project_db_1 mariadb -uroot -prootpass我知道这个错误:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)我以常规用户和根用户的身份获得此错误。
然而,当我用podman运行同一个容器时:
Podman命令
podman run -d \
--name mariadb \
-e MARIADB_USER=user \
-e MARIADB_PASSWORD=pass \
-e MARIADB_DATABASE=testdb \
-e MARIADB_ROOT_PASSWORD=rootpass \
mariadb:latest然后尝试使用以下方法连接到此数据库:
podman exec -it mariadb mariadb -uroot -prootpass我能够成功登录。
有谁能向我解释一下,我在podman写作中做错了什么,或者为什么它不允许我用我给出的证书登录?
发布于 2022-01-12 22:04:05
好吧,想知道我做了什么来解决这个问题的人.首先,我卸载了podman和podman-撰写,因为它有太多的问题,所以我安装了坞和码头-撰写。
其次,当我运行这个脚本在坞-撰写,我得到一个错误,没有出现在podman-撰写。
错误:services.db.environment must be a mapping
在搜索了这个错误之后,我发现我需要像这样设置环境部分的格式:
version: '3'
services:
db:
image: mariadb:latest
environment:
- MARIADB_USER=user
- MARIADB_PASSWORD=pass
- MARIADB_DATABASE=testdb
- MARIADB_ROOT_PASSWORD=rootpass
volumes:
- db_data:/var/lib/mysql在我修复了它之后,docker运行得非常好,我甚至可以从另一个容器连接到我的数据库。我确实用podman编写了这个代码补丁做了一个测试,但是它仍然不能工作。所以我要用码头直到波德人解决他们的问题。
https://stackoverflow.com/questions/70675139
复制相似问题