LoginSignup
2

More than 5 years have passed since last update.

Dockerコンテナ上にあるDBにSSHトンネルで接続する

Last updated at Posted at 2018-09-05

前提条件(環境)

  • (DB)サーバー:CentOS7.3
  • ローカル:macOS High Sierra
  • 公開鍵認証が可能な(DB)サーバーが構築済み
  • (DB)サーバーにDocker・docker-composeがインストール済み

docker-compose.yml

docker-compose.yml
version: '3'
services:
  db:
    image: postgres:9.2 #試したのは古いversion
    ports:
      - 127.0.0.1:5432:5432 # ここがキモ
    environment:
      - POSTGRES_DB=postgres
      - POSTGRES_USER=root
      - POSTGRES_PASSWORD=password
    container_name: "pg9.2"

操作

サーバーにSSHログインし、docker-compose.ymlのある場所で、docker-compose up -dを実行

接続

PSequelでは以下のように設定すると接続できる。

スクリーンショット 2018-09-05 20.15.26.png

Passwordはdocker-compose.ymlで設定したPOSTGRES_PASSWORDを入力。
SSH HostはサーバーのIPアドレス。
SSH UserはSSHログインのUser。
Identity FileはSSHログインに使うprivatekey。
SSH PortはSSHログインに使うPort(当たり前だと思いますがデフォルトPortの22は普通は使わない)。

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
2