Git credentials#
認証を必要とするGitリポジトリのクローンを作成できます。 installing Postgres from source または using `install_from_source <Installing from source>` であり、ソースリポジトリが認証を必要とする場合、SSHキーベースの認証またはHTTPSのユーザー名/パスワードベースの認証を使用して、TPAでアクセスできます。
資格情報をターゲットインスタンスのディスクに書き込まずに認証するには、2つのオプションがあります。
ssh://リポジトリの場合、SSHキーをローカルSSHエージェントに追加できます。--install-from-sourceconfig.ymlのforward_ssh_agent: yesを使用する場合、エージェント転送はデフォルトで有効になっています。https://リポジトリの場合、tpaexec deployを実行する前に環境でexport TPA_GIT_CREDENTIALS=username:tokenを実行できます。
注釈
ホストからコンテナへのSSHアクセスが機能しないため、macOSのDockerコンテナはssh:// URLを使用できません。 https://リポジトリURLは正常に動作します。
SSHキー認証#
SSHリポジトリのクローンを作成しており、SSHキーペアid_example
およびid_example.pub
がある場合、SSHエージェント転送を使用してターゲットインスタンスで認証します。
``ssh-agent`` をローカルで実行する必要があります 。デスクトップ環境がこれをまだ設定していない場合はほとんどが
pgrep ssh-agentで実行されているかを確認しますssh-agent bashを実行して、エージェントを有効にして新しいシェルを一時的に起動します。次に、そのシェルからtpaexec deployを実行します。ssh-add /path/to/id_exampleプライベートキーファイルを使用して、必要なキーをエージェントに追加します**。tpaexec provisionの前にconfig.ymlのトップレベルでforward_ssh_agent: yesを設定することにより、SSHエージェント転送を有効にします**。--install-from-sourceを使用する場合、これはデフォルトで行われます。
展開中に、エージェントに追加したキーは、転送されたエージェント接続を介してリモートサーバーへの認証に利用できます。
SSHエージェント転送は注意して使用し、できればこの目的のために専用に生成された使い捨てキーペアを使用します。ターゲットサーバー上のエージェントのUnixドメインソケットにアクセスする権限を持つユーザーは、他のサーバーへの認証中にエージェントを組み込んでなりすましができます。
HTTPSのユーザー名/パスワード認証#
ユーザー名と認証トークンまたはパスワードを使用してHTTPSリポジトリのクローンを作成する場合は、tpaexec deploy
の前に環境でexport TPA_GIT_CREDENTIALS=username:token
だけを作成します。デプロイメント中に、これらの資格情報はgit clone
またはgit pull
タスクのみで利用できるようになります。これらはターゲットインスタンスのディスクに書き込まれません。