私が実装しようとしているのは、コンテナ内で呼び出し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)"
私の質問:
私の目標をアーカイブするよりエレガントな方法はありますか?