DataGrip 2024.2 ヘルプ

Docker コンテナーで PostgreSQL Sakila データベースを実行する

Docker プラグインをインストールする

この機能は、インストールして有効にする必要がある Docker(英語) プラグインに依存しています。

  1. Ctrl+Alt+S を押して設定を開き、プラグインを選択します。

  2. マーケットプレースタブを開き、Docker プラグインを見つけて、インストールをクリックします (プロンプトが表示されたら、IDE を再起動します)。

ステップ 1. リポジトリからファイルを複製する

例として、次の 2 つのリポジトリを使用します。Sakila ダンプファイル(https://github.com/DataGrip/dumps(英語))と Docker-compose ファイル(https://github.com/DataGrip/datagrip-documentation(英語))です。Sakila リポジトリには、Sakila データベースの構造を生成するスクリプトと、データベースオブジェクトにデータを追加するスクリプトが含まれています。Docker リポジトリには、サービス、ネットワーク、ボリュームを定義する YAML ファイルが含まれています。

VCS 連携を有効にする

  1. メニューの「VCS | VCS 連携を有効にする」をクリックします。

  2. VCS 連携を有効にするダイアログで、ドロップダウンリストで Git が選択されていることを確認し、OK をクリックします。

    Enable version control integration

リポジトリのクローン

  1. Git | クローンをクリックします。

  2. URL フィールドに、次の Web URL をコピーして貼り付けます。

    • Sakila ダンプファイル:

      https://github.com/DataGrip/dumps.git
    • Docker-compose ファイル:

      https://github.com/DataGrip/datagrip-documentation.git
  3. ディレクトリフィールドで、フォルダーアイコン(The folder icon)をクリックして、リポジトリファイルのディレクトリを指定します。

    Clone repositories

ステップ 2. Docker コンテナーを実行する

このチュートリアルでは、Docker 用の PostgreSQL コンテナーを実行します(datagrip-documentation リポジトリから)。リポジトリの Docker ディレクトリには、.env ファイルと docker-compose.yml ファイルがあります。.env には、PostgreSQL サービスの資格情報が含まれています。docker-compose.yml は、サービスの作成方法と構成方法を定義します。

サービス名は、サービス定義の最初の行(JDBC URL の前)です。この例では、サービス名は postgresql_12、JDBCURL は jdbc:postgresql://localhost:54333/guest?user=guest&password=guest です。

postgresql_12: # jdbc:postgresql://localhost:54333/guest?user=guest&password=guest container_name: postgresql_12 ports: - "54333:5432" image: postgres:12-alpine env_file: .env healthcheck: test: "exit 0"

次のコマンドを実行して、コマンドラインからコンテナーを実行できます。

docker-compose up -d postgresql_12

最初に docker-compose.yml ファイルのディレクトリに移動する必要があることに注意してください。

または、DataGrip で Docker プラグインを有効にして使用することもできます。

Docker デーモンに接続する

  1. Ctrl+Alt+S を押して設定を開き、ツール | ビルド | Docker を選択します。

  2. The Add button をクリックして Docker 構成を追加し、Docker デーモンへの接続方法を指定します。

    接続設定は、Docker のバージョンとオペレーティングシステムによって異なります。

    ダイアログの下部に接続完了メッセージが表示されます。

    The Docker connection settings

    Windows で Docker または macOS を使用するときに、Docker デーモンを実行している仮想マシンにローカルパスをマッピングする方法の詳細については、Windows および macOS ホストの仮想マシンパスマッピングを参照してください。マッピングされたローカルパスの外部にあるディレクトリに対してボリュームやバインドマウントを使用することはできません。

    このテーブルは、Docker がネイティブに実行され、任意のディレクトリをコンテナーにマウントできる Linux ホストでは使用できません。

  3. サービスツールウィンドウ ( 表示 | ツールウィンドウ | サービスまたは Alt+8) を開き、構成済みの Docker 接続ノード Docker node を選択して The Connect button をクリックするか、コンテキストメニューから接続を選択します。

    The Services tool window, connected to Docker

    Docker 接続設定を編集するには、Docker ノードを選択してツールバーの The Edit Configuration button をクリックするか、コンテキストメニューから構成の編集を選択します。

    the Add Service menu をクリックして Docker 接続を選択し、サービスツールウィンドウから直接 Docker 接続を追加することもできます。Docker コンテキスト(英語)が構成されている場合は、Docker コンテキストからの Docker 接続を選択して、対応する接続を追加できます。

Docker compose 実行構成を作成する

  1. (オプション) メインツールバーを右クリックし、メインツールバーに追加 | ウィジェットの実行を選択します。メインツールバーにウィジェットを追加する方法の詳細については、ツールバーにアクションをすばやく追加するを参照してください。

  2. 次のいずれかを実行して実行 / デバッグ構成ダイアログを開きます。

    • 実行 | 実行構成の編集に進みます。または、Alt+Shift+F10 を押してから 0 を押します。

    • メインツールバーのウィジェットの実行をクリックし、実行構成の編集を選択します。

  3. 実行 / デバッグ構成ダイアログで、新規構成の追加アイコン(the Add New Configuration icon)をクリックし、Docker | Docker Compose を選択します。

  4. 名前フィールドに、構成の名前を入力します。

  5. ファイルを作成するフィールドの参照アイコンをクリックします。

  6. Docker Compose 構成ファイルダイアログで、追加ボタンをクリックして、作成ファイルに移動します。Compose YAML ファイルは、サービス、ネットワーク、ボリュームを定義します。私たちの場合、docker-compose.yml です

  7. Docker Compose 構成ファイルダイアログで、OK をクリックします。

  8. docker compose 上セパレーターの変更をクリックし、コンテナーの再作成 | なしを選択します。

  9. サービスフィールドに postgresql_12 と入力します。

  10. 実行をクリックします。

    Create the Docker compose configuration

その結果、サービスツールウィンドウに postgresql_12 実行中のコンテナーが表示されます。

The Docker compose configuration in Services tool window

ステップ 3. データソースに接続する

データベースベンダー(MySQL、PostgreSQL、Oracle)に応じて、対応するデータソース接続を作成する必要があります。このチュートリアルでは、PostgreSQL 接続を作成します。他のデータベース管理システム(DBMS)に接続する場合は、データソースを作成するを参照してください。

  1. データソースのプロパティを開きます。次のいずれかのオプションを使用して、データソースのプロパティを開くことができます。

    • ファイル | データソース ... に移動します。

    • Ctrl+Alt+Shift+S を押します。

    • データベースエクスプローラー ⌘ 1 ( 表示 | ツールウィンドウ | データベースエクスプローラー ) で、データソースのプロパティアイコン (The Data Source Properties icon) をクリックします。

    Add new data source
  2. データソースおよびドライバーダイアログで、追加アイコン(The Add icon)をクリックし、PostgreSQL を選択します。

  3. 接続設定領域の下部に「不足しているドライバーファイルをダウンロード」リンクがあるかどうかを確認します。このリンクをクリックして、データベースと対話するために必要なドライバーをダウンロードします。直接ダウンロードリンクについては、JetBrains JDBC ドライバーページを参照してください。

    ダウンロードされた JDBC ドライバーの場所は DataGrip 構成ディレクトリです。

    The Download missing driver files link

    提供されているドライバーの代わりにデータベース用のドライバーを使用することもできます。ドライバーを使用したデータベースへの接続の詳細については、「既存の接続にユーザードライバーを追加する」を参照してください。

    不足しているドライバーファイルをダウンロードリンクがない場合は、必要なドライバーがすでに存在します。

  4. URL フィールドに、次の JDBC URL をコピーして貼り付けます。

    jdbc:postgresql://localhost:54333/guest?user=guest&password=guest

    docker-compose.yml で他の DBMS の JDBC URL を見つけます。docker-compose.yml はテキストエディターで開くことができます。

  5. (オプション)名前フィールドで、現在の名前を削除し、接続の新しい名前を入力します(たとえば、PostgreSQL)。

  6. 提供された詳細を使用してデータベースへの接続を確立できることを確認します。これを行うには、接続の詳細領域の下部にある接続のテストリンクをクリックします。

    Test Connection link

    接続に問題がある場合は、データベースに接続できませんページを参照してください。

  7. (オプション) デフォルトでは、デフォルトのデータベースとスキーマのみがイントロスペクトされ、使用可能になります。他のデータベースやスキーマも操作したい場合は、「スキーマ」タブで、イントロスペクション用に選択します。

    Schemas tab of the Data Sources and Drivers dialog
  8. OK をクリックして、データソースを作成します。

Successful test connection to the PostgreSQL data source

ステップ 4. プロジェクトにディレクトリをアタッチする

DataGrip のプロジェクトからダンプファイルを実行するには、ダンプファイルを含むディレクトリをアタッチします。

  1. 次のいずれかの方法でファイルツールウィンドウを開くことができます。

    • メインメニューで、表示 | ツールウィンドウ | ファイルに移動します。

    • ツールウィンドウバーで、Files tool window icon ファイルをクリックします。

    • Alt+2 を押します。

  2. ファイルツールウィンドウで、ツールバーのディレクトリをプロジェクトにアタッチボタン (Attach Directory to Project) をクリックします。

    または、ファイルツールウィンドウの領域を右クリックし、ディレクトリをプロジェクトにアタッチを選択します。

  3. ファイルブラウザーで、添付するディレクトリに移動します。この場合は、dumps ディレクトリです。

  4. オープンをクリックします。

Directory with dump files is attached to the DataGrip project

ステップ 5. ダンプファイルを実行する

データベース構造を作成する

  1. ファイル(表示 | ツールウィンドウ | プロジェクト)ツールウィンドウで、postgres-sakila-db ツリーノードに移動します。

  2. postgres-sakila-db ツリーノードを展開します。

  3. postgres-sakila-schema.sql を右クリックして postgres-sakila-schema .sql を実行するを選択します。または、postgres-sakila-schema.sql ファイルをクリックして Ctrl+Shift+F10 を押します。

  4. 構成の編集ダイアログで、追加ボタンをクリックし、PostgreSQL を選択します。

  5. 実行を押します。

    Database structure dump file run configuration

サンプルデータをデータベースにロードする

  1. ファイル(表示 | ツールウィンドウ | プロジェクト)ツールウィンドウで、postgres-sakila-db ツリーノードに移動します。

  2. postgres-sakila-db ツリーノードを展開します。

  3. postgres-sakila-insert-data.sql を右クリックして Run postgres-sakila-insert-data.sql を選択します。または、postgres-sakila-insert-data.sql ファイルをクリックして Ctrl+Shift+F10 を押します。

  4. 構成の編集ダイアログで、追加ボタンをクリックし、PostgreSQL を選択します。

  5. 実行を押します。

Database structure dump file run configuration

ステップ 6. データベースを操作する

構造がインポートされ、データベースにデータが入力されると、作業を開始できます。

PostgreSQL database is running in Docker container

関連ページ:

Docker 接続設定

DataGrip から Docker エンジン API にアクセスするための設定を指定します。Docker と DataGrip の統合の使用方法の詳細については、「Docker」を参照してください。Docker プラグインをインストールするこの機能は、インストールして有効にする必要がある Docker プラグインに依存しています。を押して設定を開き、を選択します。マーケットプレースタブを開き、Docker プラグインを見つけて、インストールをクリックします (プロンプトが表示されたら、IDE を再起...

メニューおよびツールバー

IDE を操作するとき、いくつかのアクションを他のアクションより頻繁に実行します。生産性を最大化するには、お気に入りのアクションのデフォルトのショートカットを学ぶか、それらにショートカットを割り当てます。メニューとツールバーをカスタマイズして、必要なアクションのみを含め、再グループ化し、アイコンを構成することもできます。メニューとツールバーのカスタマイズを押して設定を開き、を選択します。使用可能なメニューとツールバーのリストで、カスタマイズするノードを展開し、目的の項目を選択します。選択した項目...

データソース

データソースは接続構成です。データベースへの接続を確立するために使用される接続の詳細のリストが保存されます。例: ホスト、ポート、データベース名、ドライバー、SSH および SSL 構成設定など。データソース設定では、イントロスペクション用のデータベースとスキーマを選択し、データベースエクスプローラーで表示したり、接続用のドライバーを変更したりすることもできます。データソースおよびドライバーダイアログ () でデータソースを設定できます。ダイアログにアクセスするには、データベースエクスプローラー...

IDE で使用されるディレクトリ

デフォルトでは、DataGrip は、各 IDE インスタンスのユーザー固有のファイル(構成、キャッシュ、プラグイン、ログなど)をユーザーのホームディレクトリに保存します。ただし、必要に応じて、これらのファイルを保存する場所を変更できます。IDE ディレクトリの場所を変更するたとえば、ユーザープロファイルドライブの容量が不足している場合や低速ディスクにある場合、ホームディレクトリが暗号化されている(IDE の速度が低下している)場合、またはネットワークドライブにある場合は、デフォルトの IDE...

JDBC ドライバー

DataGrip には、インストールパッケージのサイズを小さくし、各 IDE バージョンに合わせてドライバーバージョンを最新に保つために、バンドルドライバーは含まれていません。IDE 内および手動で JDBC ドライバーをダウンロードできます。データソースおよびドライバーダイアログ () でデータベース接続用の新しいデータソースを作成すると、不足しているドライバーをダウンロードするためのリンクが DataGrip によって提供されます。直接ダウンロードリンクについては、JetBrains JDB...

データベースに接続できません

ステップ 1. ネットワーク設定を確認する:データベースは、ローカル、サーバー、クラウドで動作できます。サーバーおよびクラウドデータベースの場合、ネットワーク接続が必要です。接続が利用可能かどうかを確認するには、ping コマンドと telnet コマンドを使用します。ping コマンドを使用すると、移行先コンピューターが移行元コンピューターから到達可能であることを確認できます。コマンドラインを開き、コマンドを入力します。は、アドレスをホスト名に解決するコマンドオプションです(可能な場合)。ping...