我尝试实现的是mysqldump
在容器中调用并将数据库转储到容器自己的目录中。
起初我尝试以下命令:
$ docker exec container-name mysqldump [options] database | xz > database.sql.xz
那是行不通的,所以我尝试了另一个:
$ docker exec container-name bash -c 'mysqldump [options] database | xz > database.sql.xz'
这次奏效了。
但这真的很蹩脚。
然后我尝试使用 docker-py 这次工作的cmd
选项看起来像这样:
cmd=['bash', '-c', 'mysqldump [options] database | xz > database.sql.xz']
记录器事件如下:
level="info" msg="-job log(exec_start: bash -c mysqldump [options] database | xz > database.sql.xz, fe58e681fec194cde23b9b31e698446b2f9d946fe0c0f2e39c66d6fe68185442, mysql:latest) = OK (0)"
我的问题:
有没有更优雅的方式来归档我的目标?