teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

ポート転送についての説明追加

2016/11/08 11:45

投稿

tkmtmkt
tkmtmkt

スコア1800

answer CHANGED
@@ -19,4 +19,18 @@
19
19
  **【参考】**
20
20
 
21
21
  * [Docker 1.8.1 - Installing on Windows 7 - Qiita](http://qiita.com/rubytomato@github/items/6c3921c1828288001fb1)
22
- * [SSHのポートフォワーディングでMySQLに接続する方法 | 株式会社田村倉庫](https://www.tamurasouko.com/?p=1092)
22
+ * [SSHのポートフォワーディングでMySQLに接続する方法 | 株式会社田村倉庫](https://www.tamurasouko.com/?p=1092)
23
+
24
+
25
+ **【おまけ】**
26
+
27
+ SSHポートフォワーディングについて図にしてみました。
28
+
29
+ * 基本はローカルからリモートへのSSH接続 `ssh docker@192.168.99.100`
30
+ * SSH接続経路を利用してローカルポートへの接続をリモート側ネットワークのポートに転送する
31
+ * ローカル側は接続元のソケット(IPアドレス:ポート)を指定し、リモート側は接続先からアクセスできるIPアドレスとポートを指定する
32
+ * リモート側を「localhost:ポート」としたが、「コンテナIP:80」でも通信可能
33
+ 「localhost:ポート」(Windows⇒SSHサーバ⇒localhost⇒dockerポートフォワード⇒コンテナ)
34
+ 「コンテナIP:80」(Windows⇒SSHサーバ⇒コンテナ)
35
+
36
+ ![SSHポート転送](63bab7c438c12dc4717483025c636739.png)

1

説明追加

2016/11/08 11:45

投稿

tkmtmkt
tkmtmkt

スコア1800

answer CHANGED
@@ -10,5 +10,13 @@
10
10
  $ ssh -fNCL 0.0.0.0:80:localhost:ポート docker@192.168.99.100
11
11
  ```
12
12
 
13
+ * `-f` : SSHをバックグラウンドで実行する
14
+ * `-N` : SSHトンネリングのみに使用する(ターミナルとして使用しないということか?よくわからんです)
15
+ * `-C` : データを圧縮して送る
16
+ * `-L` : Windows上のソケット `0.0.0.0:80` へのパケットを、dockerホストのソケット `localhost:ポート` に転送
17
+
18
+
19
+ **【参考】**
20
+
13
21
  * [Docker 1.8.1 - Installing on Windows 7 - Qiita](http://qiita.com/rubytomato@github/items/6c3921c1828288001fb1)
14
22
  * [SSHのポートフォワーディングでMySQLに接続する方法 | 株式会社田村倉庫](https://www.tamurasouko.com/?p=1092)