Press "Enter" to skip to content

如何远程访问Docker容器中的图形界面,如:kettle

本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢.

kettle是一个免费开源的、可视化的、功能强大的ETL工具。一般为了部署方便,通常都部署在docker容器中,那幺如何远程访问kettle的图形界面呢?

 

我们通常有两种方式:

 

1)客户端方式,即通过VNC(虚拟网络控制台);

 

2)浏览器方式,即通过noVNC。

 

假设你已经使用docker方式部署了kettle,如:docker-compose-kettle.yml

 

version: '2.1'
services:
  kettle:
    image: registry.cn-qingdao.aliyuncs.com/dataease/kettle:v8.3-0318
    container_name: kettle
    ports:
      - 5901:5901
    environment:
      - PENTAHO_DI_JAVA_OPTIONS=-Xms1024m -Xmx4096m -XX:MaxPermSize=256m -Dfile.encoding=utf-8
    volumes:
      - ${DE_BASE}/dataease/conf/:/opt/dataease/conf
      - ${DE_BASE}/dataease/data/kettle:/opt/dataease/data/kettle
    networks:
      - dataease-network
    restart: always

 

增加暴露5901端口,重启启动容器,此时5901上还没有服务。

 

宿主机器执行:

 

docker exec -it kettle bash

 

进入kettle容器,

 

安装tightvncserver,并设置用户为wxl,启动nvcserver服务,此时服务在5901上启动,并设置登录8位以上密码。

 

说明:默认端口为5900,:1表示+1,即5901。

 

apt-get update
apt-get install tightvncserver
USER=wxl vncserver :1

 

因为kettle容器默认是没有图形支持的。我们安装xfce4,大概822M。

 

apt install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils

 

注意修改~/.vnc/xstartup

 

#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec startxfce4

 

启动vncserver失败时,要先删除掉/tmp/.X1-lock、/tmp/.X11-unix/,然后再次重启。

 

rm -rf /tmp/.X1-lock
rm -rf /tmp/.X11-unix/
USER=wxl vncserver :1

 

这样,我们就可以通过远程工作机器上的vncViewer客户端访问了。如:

 

 

浏览器访问方式,需要在宿主机器上安装noVNC

 

gitclone https://github.com/novnc/noVNC
cd noVNC
./utils/novnc_proxy --vnc localhost:5901

 

在浏览器中访问: http://localhost:6080/vnc_lite.html 输入上面设置登录密码可以访问了。

 

 

 

启动spoon.sh图形界面。

 

 

启动后的效果:

 

 

其它:考虑到默认是国外源,建议修改为国内源,提高update的速度。

 

通常vi命令不支持,可以在更新国内源之前,先安装vim,用来编辑源/etc/apt/source.list

 

apt-get install vim

 

ubuntu 20.04国内源-阿里云:

 

deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

Be First to Comment

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注