0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Windows環境でパスが長くてZIP圧縮できない場合はDockerを活用しよう

0
Last updated at Posted at 2026-07-01

はじめに

Windowsの長いパス問題は、ZIP圧縮時によく起きるトラブルです。

対応を調べると、レジストリで制限解除とか、ツールを変えるとかあるけど、
そんな面倒なことをしたくない・・・

よくよく考えたら、これはDocker使えば良いんじゃない!?
ってなったので、やってみました

やりたいこと

dataフォルダを丸っとZIP圧縮して、backupフォルダに保存するだけ

xxx/
├── compose.yaml ← こいつを用意するだけ
├── data/        ← 圧縮対象
└── backup/      ← zip出力先(事前に作成しておく)

用意するファイル

compose.yamlでボリュームマウントして、コマンド実行だけ

compose.yaml
services:
  zipper:
    image: alpine:latest
    volumes:
      - ./data:/data:ro
      - ./backup:/backup
    command: >
      sh -c "
        apk add --no-cache zip &&
        FILENAME=data-$$(date '+%Y%m%d%H%M%S').zip &&
        zip -r /backup/$$FILENAME /data &&
        echo \"Done: $$FILENAME\"
      "

実行方法

# 実行(完了後コンテナは自動停止)
docker compose run --rm zipper

# または
docker compose up

補足

既にcompose.yaml(もしくはdockercompose.yaml)が存在する場合はファイル名を変更してください。

例)compose.zipper.yaml

コマンドはこちら

例)docker compose -f compose.zipper.yaml run --rm zipper

最後に

Windows環境で面倒なことだけど、Dockerなら簡単に対応できるので便利ですね。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?