🎃
fly.io VM 上のファイルを scp でローカルにコピーする
これはなに?
本番環境を手元で再現させるために、毎回忘れる操作を備忘録として記録します。
結論
- VMに ssh ログインして scp コマンドをインストールしておく (Dockerfile で入れていない場合)
$ fly ssh console
# apt update
# apt install openssh-client
- ssh で使うキーを生成 (Organizationの選択と、メールアドレスの入力を求められるので入れる)
$ fly ssh issue --agent
Update available 0.0.414 -> v0.0.415.
Run "fly version update" to upgrade.
? Select Organization: MIZOGUCHI Coji (personal)
? Email address for user to issue cert: coji@techtalk.jp
Populated agent with cert:
ssh-ed25519-cert-v01@openssh.com XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
- ローカルマシンにて、fly proxy でポートを開ける
$ fly proxy 10022:22
- (別ターミナルで) scp でローカルにコピー
$ scp -P 10022 root@localhost:/remote_path/remote_file local_path/local_file
注: 3. のコピーの時点で WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!
と怒られる場合は .ssh/known_hosts を編集して loaclhost の行を削除して再実行。
Discussion