Macで使っているVirtualBoxで動いているUbuntu18.04で、multipassが使えることを知り、この数日色々取り組んでいます。
その中で、dockerが使えることを知り、下記の記事を書きました。
multipassのチュートリアルでdockerをインスタンスする中で、Portainerを知りました。
このテンプレートの中で、WordPressを見つけました。
早速、WordPressのイメージのデブロイを試みました。
そして、公式のWordPressのdockerのページで、docker-compose.ymlの設定を学びました。
仮想マシンでのホストOSのUbuntu18.04の中に、docker-compose.ymlを保存して、実行しました。
ところが、エラーになりました。
私は、この時Multipassで作られたドッカーは、ドッカーなのでUbuntu18.04の上で動いていると持っていました。でも、実際は、dockerという名前のインスタントの上で、ドッカーが動いていました。
パスは、multipassのチュートリアルを読み、下記のコマンドでパスを通しました。
multipass alias docker:docker
このdockerのインスタンスの中に、docker-compose.ymlをセットする必要があると思いました。
それで、VSCODEでファイルの修正ができるように、dockerのインスタンスにSSH接続できるように試みました。
秘密鍵
下記の記事を参考に、秘密鍵のペアを作りました。
ssh-keygen
ポート22を開けました。
一応念の為ポート22を開けました。
sudo ufw allow ssh
dockerのインスタンスに、公開鍵をセット
今回作った公開鍵をdockerの中に、セットします。
今回作った公開鍵は、ここにあります。
/home/アカウント名/.ssh/id_rsa.pub
viで開いておくと良いと思います。
Ubuntu18.04で作った公開鍵を、下記のdockerのインスタンスのファイルの位置にある”authorized_keys”に保存します。
テキストエディタでコピーする形で、大丈夫です。
.ssh/authorized_keys
今回、すでに"authorized_keys"が、ありました。
既に存在する場合は、上書きせず追記してください。
既にあるキーの下に、改行して追記してください。
vi .ssh/authorized_keys
という感じで、authorized_keysを開くと良いと思います。
公開鍵の追記のことは、こちらの記事も参考になります。
SSHで接続を試みます。
IPアドレスは、Portainerにアクセスした時のIPアドレスと同じです。
シェルを開いた時と同じインスタンスの表示が出たら、無事に接続できています。
VSCODEの接続設定
VSCODEの拡張機能で、Remote-SSHをインストールします。
こちらの記事が、参考になります。
接続の指定は、ubuntu@XXX.XXX.XXXX.XXXです。
この後”秘密鍵の交換・・・・パスワードを入力してくださいとダイアログが、表示されます。
この時は、先に秘密鍵を作った時に設定した パスフレーズ を入力してください。
Ubuntuにログインするときのパスワードと、間違えないでください。
この後少し時間がかかるかもしれませんが、色々と設定されるみたいです。
これで接続できました。
仮想マシンを作り直した時
IPアドレスが同じ仮想マシンを作り直したときに遭遇した出来事を、こちらのサイトで書きました。
公開鍵の編集の方法も、説明しています。