外部ハードドライブにデータパケットを保存する方法 ============================================= 自動運転のデータパケットは毎日大量に記録されるため、外部ハードドライブを使用してデータを保存する予定です。どうやって実現できますか? - 管理者: daohu527@gmail.com - バージョン: 1.0.0 - 日付: 2024年11月2日 - 説明: 回答 ---- デフォルトでは、データはコンテナ内に保存されますが、データの永続性を実現し、データ損失を防ぐために、外部ハードドライブをホストの特定のディレクトリにマウントし、そのディレクトリをコンテナ内にマウントする必要があります。これにより、データはハードドライブ上に保存され、コンテナが停止しても失われません。 Ubuntuでコンテナにハードドライブをマウントする手順 ------------------------------------------ 1. **外部ハードドライブのデバイスを識別** .. code-block:: bash lsblk 外部ハードドライブのデバイス名を探します(例: `/dev/sdb1`)。 2. **マウントディレクトリの作成** ハードドライブをマウントするためのディレクトリを作成します(例: `/apollo/data/bag`)。 .. code-block:: bash cd apollo sudo mkdir -p data/bag 3. **ハードドライブをマウント** `mount`コマンドを使用してハードドライブをそのディレクトリにマウントします。 .. code-block:: bash sudo mount /dev/sdb1 data/bag 4. **【スキップ】コンテナの起動とディレクトリのマウント** コンテナを起動するときに、マウントディレクトリをコンテナ内のパス(例: `/data`)にバインドします。 .. code-block:: bash docker run -v /mnt/external_drive:/data your_container_image > `apollo`ディレクトリはすでにコンテナにマウントされているため、この手順をスキップできます。 これにより、外部ハードドライブのデータはコンテナ内の `/data` ディレクトリでアクセスでき、コンテナが再起動または停止してもハードドライブに保持されます。 データパケットの記録 --------------------- データパケットを記録し、保存パスを指定します。 .. code-block:: bash cyber_recorder record -a -o=data/bag