ターゲットの実行
GoLand から直接、SSH サーバー、WSL、または Docker コンテナーで Go ビルド構成と Go Test 構成を実行できます。
実行ターゲットを使用すると、選択した環境でコードをテストできます。
前提条件
ターゲットで Go コードを実行するには、Go ランタイムを使用してターゲットを構成します。
Go ビルド構成または Go Test 構成で、 実行 リストからターゲットを選択します。 その後、ローカルの場合と同じように構成を起動します。
同じターゲットで複数の構成を実行できます。 プロジェクトのデフォルトターゲットも設定できます。
プロジェクトのデフォルトのターゲットを設定する
をクリックしてください。
プロジェクトのデフォルトターゲット リストから、プロジェクトに使用するターゲットを選択します。
サポートされている実行 / デバッグ構成タイプ
次の 実行 / デバッグ構成は、リモートターゲットで実行できます:
Go ビルド
Go テスト
実行 / デバッグ構成を作成する
に進みます。 または、 Alt+Shift+F10 を押してから 0 を押します。
実行 / デバッグ構成ダイアログで、ツールバーの 追加 ボタン
をクリックするか、 Alt+Insert を押します。
サポートされている実行 / デバッグ構成タイプの 1 つを選択します。
すでにターゲットを定義している場合は、 実行 メニューからターゲットを選択します。 それ以外の場合は、 ターゲットの管理… をクリックして新しいターゲットを追加します。 特定のターゲットタイプの構成の詳細については、次の手順を参照してください。
実行 / デバッグ構成テンプレートで実行ターゲットを構成することもできるため、次にその型の新しい構成を作成するときに、そのパラメーターにはすでに目的の値があります。 詳細については、 テンプレートのデフォルト値を構成する を参照してください。
実行
リモートターゲットでアプリを実行するプロシージャは、ローカルで実行する場合と同じです:
メインツールバーで実行 / デバッグ構成を選択します。
をクリックするか、 Shift+F10 を押します。
リモートターゲット上にビルドする が選択されている場合、GoLand は必要なソースファイルをターゲットにコピーし、そこでアプリケーションまたはテストをビルドします。 選択した Go SDK が WSL にある場合、GoLand はターゲット上でもビルドします。 それ以外の場合は、ローカルでビルドし、コンパイル済みの実行可能ファイルをターゲットにコピーします。
ターゲットタイプ
ターゲットは、アプリケーションが実行される環境の構成を記述します。
次のターゲットを作成できます。
リモートターゲットを作成すると、GoLandはリモート環境で使用可能な構成を自動的に検出します。 必要に応じて、追加の構成を手動で構成できます。
WSL
メインメニューで、 をクリックします。
ターゲットを追加 ウィンドウから WSL を選択します。

新規ターゲット ウィザードで、 Linux ディストリビューション リストから Linux ディストリビューションを選択します。 分布が自動的に検出され、イントロスペクションに合格した場合は、 次へ をクリックします。
WSL の Go ランタイム構成が正しく検出されたことを確認し、 完了 をクリックします。
または、独自の設定を入力します。
実行可能にする: Go 実行可能ファイルへのパス (たとえば、 /usr/local/go/bin/go )
GOPATH: ターゲットの GOPATH。 GoLand は
go env GOPATHを実行して、この値を自動的に検出します。バージョン: Go のバージョン。 GoLand は
go versionを実行して、この情報を自動的に検出します。追加設定: ソースコードファイルと実行可能ファイルのディレクトリを設定できるようにする設定のグループ。
ターゲットで実行するために、GoLand はソースファイル、作業ディレクトリのファイル、コンパイル済みの実行可能ファイル、Delve をアップロードします。 追加設定 でパスを指定しない場合、GoLand はソースファイルと実行可能ファイル用のディレクトリを作成します。
次のオプションを指定できます。
プロジェクトソースディレクトリ: ソースコードファイルがアップロードされるターゲット上のディレクトリ。
コンパイルされた実行可能ファイルディレクトリ: コードが生成する実行可能ファイルを格納するために使用されるターゲット上のディレクトリ。

ターゲットの実行 ダイアログで、 プロジェクトのデフォルトターゲット リストをクリックし、作成した構成を選択します。

アプリケーションを実行します。

SSH
既存の SSH 構成を使用するか、新しい構成を作成するかを選択します。
SSH リストから既存のSSH構成を選択し、 次へ をクリックします。 SSHの構成の詳細については、 Create SSH configurationsを参照してください。
SSH サーバーの IP、SSH 接続がリッスンしているポート、そしてアプリケーションを実行するサーバーマシン上のユーザー名を入力します。 次へ をクリックしてください。
接続が確立されるのを待ちます。 資格情報を持つエージェントが存在する場合、追加の構成は必要ありません。 それ以外の場合は、認証方法を選択し、必要な値を入力します。
パスワード: パスワードを入力します。
キーペア (OpenSSH または PuTTY): この認証方法を適用するには、クライアントマシンに秘密鍵があり、リモートサーバーに公開鍵が必要です。 GoLand は、 OpenSSHユーティリティで生成する秘密鍵をサポートします。
秘密鍵が保存されているファイルへのパスを指定し、パスフレーズ (存在する場合) を対応するフィールドに入力します。 GoLand にパスフレーズを記憶させるには、 パスフレーズを保存 チェックボックスを選択します。
次へ をクリックしてください。
SSHサーバーのイントロスペクションが完了するのを待ちます。 このステップ実行中に、GoLand は環境で利用できる言語構成を識別しようとします。 次へ をクリックしてください。
次のプロパティを構成します:
rsync を使用する: ファイル転送に rsync(英語) を使用するには、このオプションを切り替えます。 通常、ファイルのコピーが高速化されるため、これをお勧めします。
ターゲット上のプロジェクトパス: プロジェクトファイルの保存に使用されるサーバー上のパス。
Go 実行可能ファイルへのパスと、必要に応じて GOPATH を設定します。 GoLand は Go のバージョンを自動的に検出します。 バージョン フィールドは読み取り専用です。
次の Go 構成設定を使用できます:
実行可能にする: Go 実行可能ファイルへのパス (たとえば、 /usr/local/go/bin/go )
GOPATH: ターゲットの GOPATH。 GoLand は
go env GOPATHを実行して、この値を自動的に検出します。バージョン: Go のバージョン。 GoLand は
go versionを実行して、この情報を自動的に検出します。追加設定: ソースコードファイルと実行可能ファイルのディレクトリを設定できるようにする設定のグループ。
ターゲットで実行するために、GoLand はソースファイル、作業ディレクトリのファイル、コンパイル済みの実行可能ファイル、Delve をアップロードします。 追加設定 でパスを指定しない場合、GoLand はソースファイルと実行可能ファイル用のディレクトリを作成します。
次のオプションを指定できます。
プロジェクトソースディレクトリ: ソースコードファイルがアップロードされるターゲット上のディレクトリ。
コンパイルされた実行可能ファイルディレクトリ: コードが生成する実行可能ファイルを格納するために使用されるターゲット上のディレクトリ。
Docker
Docker サポートを有効にする説明に従って、 Docker サーバー を選択または構成します。
Windows と macOS では、Docker がプロジェクトフォルダーと、コンテナーで使用されるその他のローカルフォルダーにアクセスできるようにします。 詳細については、 公式の Docker ドキュメント(英語)を参照してください。
イメージをローカルでビルドするか、Docker レジストリからプルするかを選択します。
Dockerfile: イメージの構築に使用される Dockerfile。
コンテキストフォルダー: ビルド中に Docker デーモンがその内容にアクセスして、後でイメージファイルシステムで使用するフォルダー。
コードを実行する前に毎回自動的にイメージを再ビルドする: このオプションを設定すると、コードが実行されるたびにイメージが再構築されます。 それ以外の場合、GoLandは既存のイメージ(存在する場合)を使用します。
さらに、以下を指定できます:
イメージタグ: ビルドされたイメージの名前とタグを指定します。
docker buildで-tオプションを使用するのと同様です。ビルドオプション:
docker buildコマンドに任意のオプションを指定します。ビルド引数: デフォルトのビルド時変数をオーバーライドします(英語)。
docker buildで--build-argオプションを使用するのと同じです。実行オプション:
docker runコマンドに任意のオプションを指定します。
イメージタグ: レジストリから取得するイメージの完全な座標を指定します。 リポジトリのみが指定されている場合は、デフォルトの
:latestタグが使用されます。実行オプション:
docker runコマンドに任意のオプションを指定します。
コンテナーのイントロスペクションが完了するのを待ちます。 このステップ実行中に、GoLand は環境で利用できる言語構成を識別しようとします。 次へ をクリックしてください。
Go 実行可能ファイルへのパスと、必要に応じて GOPATH を設定します。 GoLand は Go のバージョンを自動的に検出します。
次の Go 構成設定を使用できます:
ターゲット上のプロジェクトパス: プロジェクトファイルの保存に使用されるサーバー上のパス。
実行可能にする: Go 実行可能ファイルへのパス (たとえば、 /usr/local/go/bin/go )
GOPATH: ターゲットの GOPATH。 GoLand は
go env GOPATHを実行して、この値を自動的に検出します。バージョン: Go のバージョン。 GoLand は
go versionを実行して、この情報を自動的に検出します。追加設定: ソースコードファイルと実行可能ファイルのディレクトリを設定できるようにする設定のグループ。
ターゲットで実行するために、GoLand はソースファイル、作業ディレクトリのファイル、コンパイル済みの実行可能ファイル、Delve をアップロードします。 追加設定 でパスを指定しない場合、GoLand はソースファイルと実行可能ファイル用のディレクトリを作成します。
次のオプションを指定できます。
プロジェクトソースディレクトリ: ソースコードファイルがアップロードされるターゲット上のディレクトリ。
コンパイルされた実行可能ファイルディレクトリ: コードが生成する実行可能ファイルを格納するために使用されるターゲット上のディレクトリ。
Docker Compose
単一のDocker Composeサービスを実行ターゲットとして使用できます。
Docker サポートを有効にする説明に従って、 Docker サーバー を選択または構成します。
Windows および macOS の場合 – プロジェクトフォルダーなど、ワークフローで使用されるすべてのフォルダーに Docker がアクセスできることを確認してください。 詳細については、 公式の Docker ドキュメント(英語)を参照してください。
Docker Compose構成ファイルを指定し、必要なサービスを選択して、追加の環境変数を提供します。 次へ をクリックしてください。
Docker Composeサービスのイントロスペクションが完了するのを待ちます。 このステップ実行中に、GoLand は環境で利用できる言語構成を識別しようとします。 次へ をクリックしてください。
Go 実行可能ファイルへのパスと、必要に応じて GOPATH を設定します。 GoLand は Go のバージョンを自動的に検出します。
次の Go 構成設定を使用できます:
ターゲット上のプロジェクトパス: プロジェクトファイルの保存に使用されるサーバー上のパス。
実行可能にする: Go 実行可能ファイルへのパス (たとえば、 /usr/local/go/bin/go )
GOPATH: ターゲットの GOPATH。 GoLand は
go env GOPATHを実行して、この値を自動的に検出します。バージョン: Go のバージョン。 GoLand は
go versionを実行して、この情報を自動的に検出します。追加設定: ソースコードファイルと実行可能ファイルのディレクトリを設定できるようにする設定のグループ。
ターゲットで実行するために、GoLand はソースファイル、作業ディレクトリのファイル、コンパイル済みの実行可能ファイル、Delve をアップロードします。 追加設定 でパスを指定しない場合、GoLand はソースファイルと実行可能ファイル用のディレクトリを作成します。
次のオプションを指定できます。
プロジェクトソースディレクトリ: ソースコードファイルがアップロードされるターゲット上のディレクトリ。
コンパイルされた実行可能ファイルディレクトリ: コードが生成する実行可能ファイルを格納するために使用されるターゲット上のディレクトリ。