5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

VSCode Tunnel で ECS Fargateのコンテナに接続

Last updated at Posted at 2023-07-31

ECS Fargate のコンテナに VSCode Tunnel で接続

接続できると、下記のように ECS Fargateのコンテナ内を ローカルの VSCode でファイル編集・シェル実行できるようになります。

スクリーンショット 2023-07-31 16.17.00.png

目的

ECS Fargate のコンテナ内に接続し、VSCode から編集

前提条件

1. (Must) curl か wget が使用できる ECS Fargate コンテナ

2. (Must) Github アカウント必要(認証)

3. (Must) Remote Tunnels

スクリーンショット 2023-07-31 16.54.29.png

4. (Option) AWS Toolkit

スクリーンショット 2023-07-31 17.07.34.png

Option については、ecs fargate exec ができれば OK です。

接続手順

1. ECS Fargate(リモート) 側で VSCode CLI インストール

ecs fargate exec で コンテナの中に入るか、dockerfileに書くでもいいです。

curl -Lk 'https://code.visualstudio.com/sha/download?build=stable&os=cli-alpine-x64' --output vscode_cli.tar.gz;
tar -xf vscode_cli.tar.gz;

2. Tunnel 作成

./code tunnel;

3. Github 認証

ブラウザで https://github.com/login/deviceにアクセスして、コード入力

※ 入力コードは、./code tunnel実行したターミナルに表示されてます

  • 認証画面

スクリーンショット 2023-07-31 17.19.42.png

スクリーンショット 2023-07-31 16.09.55.png

任意の tunnel 名入力

4. VSCode の拡張でアクセス

スクリーンショット 2023-07-31 17.25.15.png

Remote Explorer

REMOTES(TUNNELS/SSH)

先程任意の tunnel 名をクリック

Connect in Current Window or Connect in New Window

※ コマンドパレットでConnect to Tunnelでも実行できます ↓

スクリーンショット 2023-07-31 17.31.42.png

接続解除手順

  • リモート側で、./code tunnel unregister
  • VSCode から 右クリックでUnregister Tunnel

スクリーンショット 2023-07-31 16.19.19.png

メリット

  • セキュリティグループに SSH 用のポート開ける必要なし
  • ローカルの VSCode で fargate 内部を編集(Vim インストール必要なし)

参考

注意

  • 検証したコンテナはPublic Subnetに配置されたECS Fargateで検証しました。Private Subnetに配置されたコンテナでは未検証です。
  • 未検証ですが、EC2でも可能だと思います。
5
1
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
5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?