DevContainerにホストの認証情報を渡してGitHub Cliを使う
2025/11/27
VSCode DevContainerでGitHub Cliを使う方法です。
設定ファイル
devcontainer.jsonのfeaturesでghcr.io/devcontainers/features/github-cliを指定すればDevContainer内でGitHub Cli、つまりghコマンドを使うことができます。
{ "features": { "ghcr.io/devcontainers/features/github-cli:1": {}, }}ghcr.io/devcontainers/features/github-cli
ホストの認証情報を渡す
しかしこれだけだとDevContainer内には認証情報を保持していないため、gh auth loginなどで認証をする必要があります。
一度だけならよいのですが、DevContainerをrebuildするたびに、認証をする必要があるので非常に面倒です。
ホストですでに認証済の場合は、Linuxの場合$HOME/.config/ghにconfig.ymlとhosts.ymlが作成されています。
$ ls ~/.config/ghconfig.yml hosts.ymlこれらのファイルをDevContainerにmountしてあげることで、DevContainerで認証済の状態を作ることができます。
{ "features": { "ghcr.io/devcontainers/features/github-cli:1": {}, }, "remoteEnv": { "GH_TOKEN": "${localEnv:GH_TOKEN}" }, "mounts": [ "source=${localEnv:HOME}/.config/gh,target=/home/vscode/.config/gh,type=bind" ],これでDevContainer内にホストの認証情報を渡すことができたので、DevContainerでわざわざ認証する必要なくGitHub Cliを使うことができます。