我无法弄清楚如何从Docker容器中读取文件的内容.我想将SQL文件的内容执行到我的PGSQL容器中.我试过了:
docker exec -it app_pgsql psql --host=127.0.0.1 --username=foo foo < /usr/src/app/migrations/*.sql
Run Code Online (Sandbox Code Playgroud)
我的应用程序已安装/usr/src/app.但是我收到了一个错误:
bash:/usr/src/app/migrations/*.sql:没有这样的文件或目录
似乎Bash将此路径解释为主机路径,而不是客户路径.实际上,两次执行命令非常有效:
docker exec -it app_pgsql
psql --host=127.0.0.1 --username=foo foo < /usr/src/app/migrations/*.sql
Run Code Online (Sandbox Code Playgroud)
我认为这更像是Bash问题而不是Docker问题,但我仍然被卡住了!:)
Von*_*onC 37
尝试并使用shell来执行该命令
sh -c 'psql --host=127.0.0.1 --username=foo foo < /usr/src/app/migrations/*.sql'
Run Code Online (Sandbox Code Playgroud)
完整的命令是:
docker exec -it app_pgsql sh -c 'psql --host=127.0.0.1 --username=foo foo < /usr/src/app/migrations/*.sql'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15138 次 |
| 最近记录: |