gpt4 book ai didi

linux - shell脚本,以bash运行docker镜像,执行db dump并将文件复制到主机

转载 作者:行者123 更新时间:2023-12-02 19:15:22 30 4
gpt4 key购买 nike

对Shell脚本来说是全新的。我想运行sql镜像(镜像就在那里进行数据库转储)并进行db转储,然后使用Shell脚本将文件复制到主机。
我的手动方式是

1) docker run -it <image_name> bash (this takes in image bash)
2) mysqldump -h <ip> -u <user> -p db > filename.sql
3) docker cp <containerId>:/file/path/within/container /host/path/target (running this in host machine)
这样做,我从容器到主机手动获取转储。
但是在制作shell脚本时,我在点1)上遇到了问题(1) docker run -it bash(这会占用图像bash) ,因为这将我带到了bash上,我必须手动键入命令。
我该如何在shell脚本中做到这一点。
任何帮助将不胜感激!

最佳答案

您可以将命令作为参数传递给Bash:

docker run -it <image_name> --name sqldump bash -c "mysqldump -h <ip> -u <user> -p db > /tmp/filename.sql"
docker cp sqldump:/tmp/filename.sql /path/on/host/filename.sql

关于linux - shell脚本,以bash运行docker镜像,执行db dump并将文件复制到主机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63844741/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com