1.はじめに
Virtual Boxの中で動かしているUbuntu Linuxのデーモンへのアクセス方法の覚え書きです。
ここで紹介するデーモンの例
- samba
- sshd
- PostgreSQL on Docker
構成
- ホスト
- Windows 10
- VirtualBox 6.1
- ゲスト
- Ubuntu Linux 20.04 LTS 日本語Remix版
- ゲストOSのホスト名:
ubuntuvb
2.VirtualBox側の設定
ゲストOSを起動する前に設定をしておきます。
ホストOSから、VirtualBoxのゲストOSのポートを見えるようにします。
イメージの一覧を右クリックして「設定...」を開く
「ネットワーク」を選択
「アダプター2」を選択
- 「ネットワークアダプターを有効化」のチェックを入れる
「割り当て」ドロップダウンリストから、「ホストオンリーアダプタ」を選択
OKボタンを押して設定完了
設定が終わったら、ゲストOSを起動します。
3.デーモンごとの説明
(1)samba
インストール
$ sudo apt install samba
設定、およびユーザの作成については、下記を参照ください。
ホストOS側からアクセス
エクスプローラのアドレスバーに\\ubuntuvb
を入力しアクセスすると、ゲストOS側のホームディレクトリが見えました。
(2)sshd
インストール
$ sudo apt install openssh-server
ホストOS側からアクセス
ゲストOS側のsshにログインできました。
(3)PostgreSQL on Docker
Dockerのインストール
公式ページの手順に従います。
Install Docker Engine on Ubuntu | Docker Documentation
一般ユーザでもDockerの操作ができるように、自分のユーザ名をdockerグループに追加します。
$ sudo usermod -aG docker <自分のユーザ名>
PostgreSQLのコンテナを起動
起動オプションに、ポートの指定を追加します。
-p <ホストOS側>:<ゲストOS側>
PostgreSQLのポートは5432番です。 下記の例では、ホスト・ゲスト両方とも5432を指定しています。
$ docker run --name some-postgres -e POSTGRES_PASSWORD=mysecretpassword -p 5432:5432 -d postgres
ホストOS側からアクセス
ユーザ名 | postgres |
パスワード | mysecretpassword |
ポート | 5432 (-pオプションの<ホストOS側>の番号です) |
ゲストOS側のデータベースに接続できました。