bash - Docker 容器中的 pg_dump

标签 bash shell docker command-line kubernetes

我正在尝试运行 pg_dump在 Docker 容器中通过 kubectl并将输出保存到我​​的本地机器。

这是我到目前为止所拥有的:
kubectl exec -it MY_POD_NAME -- pg_dump -h DB_HOST -U USER_NAME SCHEMA_NAME > backup.sql
然而,这目前只是挂起。我相当确定这是由于 --忽略 >kubectl exec -it MY_POD_NAME -- pg_dump -h DB_HOST -U USER_NAME SCHEMA_NAME按预期输出到控制台。

最佳答案

使用 kubectl port-forward POD_NAME 6000:5342将您的 pod 端口(假设暴露在 5432 上)转发到 localhost:6000 .

然后运行 ​​pg_dump直接使用主机名作为 localhost和端口为 6000$ pg_dump -h DB_HOST -U USER_NAME SCHEMA_NAME > backup.sql

关于bash - Docker 容器中的 pg_dump,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49980172/

相关文章:

windows - 如何在 Windows 命令提示符下运行 .sh?

bash - 读取 HTTP 正文响应并使用 Bash 迭代该结果

shell - Emacs 的 eshell 在多平台开发中的使用有多普遍?

bash - 找出 bash/dash/sh 在启动过程中读取的所有文件

linux - Shell 脚本子串直到空格

python - 从 `input()` 读取文件后如何使用 `stdin` ?

Docker Compose/无效,因为

docker - 无法推送到远程 docker 注册表

docker - Docker,为两个容器创建网络的正确方法

java - 有没有办法在解压缩文件的同时检查当前正在解压缩的文件?