zoukankan      html  css  js  c++  java
  • Dockerfile实现客户端通过网页访问容器的桌面和伪终端,主要的工具是guacamole

      Dockerfile实现客户端通过网页访问容器的桌面和伪终端,主要的工具是guacamole。

      首先来介绍guacamole,Guacamole是一种基于HTML5和AJAX技术的vnc客户端,有了它就可以直接通过web浏览器,快速访问vnc server上的Xwindows系统界面了。优酷上有一段关于Guacamole的视频演示在http://v.youku.com/v_show/id_XMTg4ODgwNDg0.html

      git上dockerfile代码:http://git.oschina.net/wangyufu/docker_guacamole

      分为三个Dockerfile,执行的顺序:

    1. ubuntu-xfce-vnc-desktop 基础镜像是Ubuntu15.04
    2. jdk-tomcat 基础镜像是ubuntu-xfce-vnc-desktop
    3. guacamole 基础镜像是jdk-tomcat

      第一个Dockerfile是安装基础镜像和一些桌面环境,第二个Dockerfile是基于ubuntu-xfce-vnc-desktop的镜像安装jdk和tomcat,因为guacamole需要java的环境支持,下面的就是安装guacamole。所以每个Dockerfile的代码中FROM需要自己改一下。

      web显示桌面的分辨率需要先再ubuntu-xfce-vnc-desktop/supervisord.conf中的 command=/usr/bin/Xvfb :1 -screen 0 1280x720x16    #修改合适的分辨率

      ssh的登录用户名,guacamole/startup.sh 修改创建的用户名和密码,guacamole/user-mapping.xml 修改为创建后的用户名和密码。

      所有都完成后就可以登录了,启动容器,访问服务启动的地址和映射到容器的8080端口加路径为/guacamole

      

      登入后进入管理界面:


      选择ssh:

      

      选择vnc:

      

      在安装guacamole遇到的问题:

      问题:启动tomcat时,日志报Invalid or unreadable WAR file : error in opening zip file

      解决:安装zip的包

      

      问题:启动tomcat时,日志报No guacamole.properties file found within GUACAMOLE_HOME or the classpath. 

      解决:创建一个新的用户家目录为tomcat的程序的目录并赋权限,在/etc/profile 下添加GUACAMOLE_HOME的变量并刷新。

  • 相关阅读:
    CrackMe17
    逆向按钮事件定位
    CrackMe20
    CrackMe14
    CrackMe09
    CrackMe08
    分布式事务seata
    SpringBoot自动注入原理初解与实现
    InnoDB事务日志(redo log 和 undo log)详解
    高频面试题:Spring 如何解决循环依赖?
  • 原文地址:https://www.cnblogs.com/wangyufu/p/5522832.html
Copyright © 2011-2022 走看看