guacamole を使う その2  (docker DB連携なし編)

本エントリとは直接関連しませんが、まずは宣伝から。

https://jpoug.doorkeeper.jp/events/51429

まだ席に余裕がありますので、興味がある方は是非。

 

 

ここからが本題です。

今回もその1から続きguacamoleです。

knopp.hatenablog.jp

その1ではCentOS7+yumでのインストール方法を紹介しましたが、

yumからですと、最新版ではなく、少々古いバージョンのインストールとなります。

スマホタブレット対応など、最新版の機能を使いたい場合は、

このエントリのようにdockerを使うのがお手軽です。

基本的には、公式ドキュメントに記載の方法でよいのですが、

公式ドキュメントの方法では、DB連携(MySQL/PostgreSQL)前提となってしまいます。

DB連携するほどでもない(またはリソースケチりたい場合)は

今回紹介する手順になります。

 

<構成>
・OS CentOS7.2

・docker 1.12
・guacd/guacamole (tomcat) 別コンテナ

・guacd/guacamole 0.9.9(執筆時点)
・DB連携なし


<インストール方法>

#guacamoleのパスワードをmd5hashで取得
#ここではguacamoleには、gucauser/Guac123!でログインすることとする。
#echo -n 'Guac123!' | md5sum | awk '{print $1}'
#6e9b83fc538318184ca185a44c06d235

 

#コンテナの起動

#docker run --name guacd -d glyptodon/guacd

#docker run --name guacamole --link guacd:guacd -d -p 8080:8080 glyptodon/guacamole /bin/sh -c "cd /usr/local/tomcat && exec catalina.sh run"

 

#コンテナ内で操作

#docker exec -ti guacamole /bin/bash

#mkdir -p /root/.guacamole

#cat > /root/.guacamole/guacamole.properties <<'EOF'

guacd-hostname: guacd

guacd-port: 4822

EOF

 

 

#user-mapping.xml(認証情報)の編集
#ここではguacamoleには、gucauser/Guac123!でログインすることとする。
#接続先は適宜編集してください

#接続先は guacdコンテナからみた接続先であることを注意

#docker ホストに接続するようにしたいのであれば、

#locahostではなく、docker ホストのIP(通常 172.17.0.1)にする
#cat >/root/.guacamole/user-mapping.xml<<'EOF'
<user-mapping>
     <authorize username="guacuser" password="6e9b83fc538318184ca185a44c06d235" encoding="md5">
         <connection name="doccker-host-ssh">
             <protocol>ssh</protocol>
             <param name="hostname">172.17.0.1</param>
             <param name="port">22</param>
         </connection>
         <connection name="RDP">
             <protocol>rdp</protocol>
             <param name="hostname">localhost</param>
             <param name="port">3389</param>
         </connection>
        <connection name="VNC">
            <protocol>vnc</protocol>
            <param name="hostname">localhost</param>
            <param name="port">5901</param>
        </connection>
     </authorize>
</user-mapping>
EOF

 

 

#guacamole コンテナからログアウト

#exit

#guacamole コンテナ再起動

#docker restart guacamole

 

以下のURLでアクセスできます

https//<dockerホストのIPアドレス>:8080/guacamole