Closed masayuki14 closed 6 years ago
こんてなからホストにsshする。
# ip route
default via 172.17.0.1 dev eth0
172.17.0.0/16 dev eth0 proto kernel scope link src 172.17.0.2
でホストのIPは 172.17.0.1
だというのに接続できない。
ローカルIPである 192.168.10.7
で指定するとつながった。
謎だ。
bridge
ネットワークになってるからつながるということなんだろうか。
$ ssh morisaki@192.168.10.7 -L 5432:localhost:5432 -f -N
-f
: バックグラウンドで実行
-N
: 実行コマンドなし
これでバックグラウンドsshがつながってポートフォワードされる
# embulk run config.yml
2018-05-15 02:43:02.772 +0000: Embulk v0.9.7
2018-05-15 02:43:03.297 +0000 [WARN] (main): DEPRECATION: JRuby org.jruby.embed.ScriptingContainer is directly injected.
2018-05-15 02:43:04.876 +0000 [INFO] (main): Gem's home and path are set by default: "/root/.embulk/lib/gems"
2018-05-15 02:43:05.618 +0000 [INFO] (main): Started Embulk v0.9.7
2018-05-15 02:43:05.682 +0000 [INFO] (0001:transaction): Loaded plugin embulk-output-postgresql (0.8.0)
2018-05-15 02:43:05.732 +0000 [INFO] (0001:transaction): Loaded plugin embulk-parser-jsonl (0.2.0)
...
動いた。 pgAdminでテーブル確認したら、一時テーブルできてるので、これでDockerのままでデータ投入できそうだぜ。
create table
してやれば embulk でデータ入れられるのを確認。Yelpも同じようにいけそう。
yelpのテーブルは、定義書のやつだと column s._internal_id does not exist
ってエラーがでる。
postgres のコンテナだとssh使えない
$ apt-get install openssh-client
で入れる必要あり
テーブル解決したけど、先にトリガー登録せんとあかんやったなー。
MacのDocker環境からRDSにつないでEmblukでデータを入れたい。