GithubHelp home page GithubHelp logo

abcdesktopio / conf Goto Github PK

View Code? Open in Web Editor NEW
4.0 4.0 1.0 2.41 MB

sample configuration and reference files and install scripts for docker and kubernetes

License: GNU General Public License v2.0

Shell 44.05% Roff 45.78% PowerShell 10.17%
configuration

conf's Introduction

Welcome to abcdesktop.io

abcdesktop.io is a native cloud desktop, and a complete work environment accessible from a simple HTML 5 web browser, without any installation. This flexible working environment simplify usage like :

  • Telecommuting
  • Remote virtual desktop
  • IT temporary acess for subcontractors
  • Training

abcdesktop.io: a docker VDI service

abcdesktop.io provides a way to run grapicals applications securely isolated in a docker container, and use a web browser HTML5 as display device. Because dockers containers are lightweight and run without the extra load of an operating system, you can run many graphical applications on a single kernel or on a kubernetes cluster.

screenshot-applications

Quick installation for kubernetes

You can watch the youtube video sample. This video describes the Quick installation process.

<iframe width="640" height="480" src="https://www.youtube.com/embed/KpjG4ksoGNI" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen> </iframe>

Download and extract the latest release automatically (Linux or macOS) or read the step by step installation process abcdesktop for kubernetes

curl -sL https://raw.githubusercontent.com/abcdesktopio/conf/main/kubernetes/install.sh | sh -

Quick installation for docker (personal use, Non-cluster mode)

You can watch the youtube video sample. This video describes the Quick installation process.

<iframe width="640" height="480" src="https://www.youtube.com/embed/_A80Sy9g28I" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen> </iframe>

Download and extract the latest release automatically (Linux or macOS) or read the step by step installation process abcdesktop for docker

curl -L https://raw.githubusercontent.com/abcdesktopio/conf/main/docker/install.sh | sh -

## Features

  • Access to the user home directory (homeDirectory support in Active Directory)
  • All applications run inside an isolated docker container
  • Support Microsoft Windows applications using Wine
  • GNU/Linux X11 applications native support
  • No need to install applications any more
  • Local and remote printing support
  • Off-line sessions are maintained

Supported Web browser HTML 5

abcdesktop.io uses many modern web technologies. However these are the minimum versions we are currently aware of:

  • Chrome 49,
  • Firefox 58,
  • Safari 11,
  • Opera 36,
  • Microsoft Edge (based on Chromium)

conf's People

Contributors

abcdesktop avatar alexandredevely avatar matt307082 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

chintus777

conf's Issues

add app images

I found that if I do
crictl inspecti abcdesktopio/nautilus.d > nautilus.json
the json file format is different from what is provided in this repository.

If I then curl -X PUT... the output json of crictl inspecti to the API manager endpoint the output is null, and therefore the application will not be added to abcdesktop.

However, if I use docker inspect, there is no problem.

The API manager endpoint seems only accept docker inspect output, but the documentation page mentions that it should accept both crictl inspecti and docker inspect.

Am I missing anything, do I need to tweak the json after crictl inspecti? Thanks for the help

http:<pod-ip>:8000/API/healthz is not connecting; connection refused

We have been testing abcdesktop in our microk8s environment for sometime now. Initially, about 2 months back, when this was the only service on the microk8s cluster, it used to work. Then we created different namespaces and enabled many of our services. Post some UI customization, when we tried to redeploy abcdesktop, pyod-od started throwing error - "http://10.1.230.63:8000/API/healthz": dial tcp 10.1.230.63:8000: connect: connection refused" and when we try to login, we are getting Gateway Timeout. Even anonymous user is not going through.
What could be the reason?
Just for your information, we have enabled "dashboard-metrics-scraper" service and it is hosted in "kube-system" namespace and is using port 8000. Ideally it should not create any issues for pyod-od, but we are unable to get through.
Your guidance is highly appreciated.
Best regards,
Raghav

New Customised oc.user.ubuntu:<tag>

Hi,

I have built a customised oc.user.ubuntu image using the source and instructions given and pushed it to my docker repository exzaadmin/oc.user.ubuntu: and set this to be public repository.

In the od.config file, I have edited the below section:

graphical is the main abcdesktop container

include x11 service

'graphical' : {
'image': { 'default': 'exzadmin/oc.user.ubuntu:0.0.1' },
'imagePullPolicy': 'IfNotPresent',
'enable': True,
'acl': { 'permit': [ 'all' ] },
'waitportbin' : '/composer/node/wait-port/node_modules/.bin/wait-port',
# 'resources': {
# 'requests': { 'memory': "320Mi", 'cpu': "250m" },
# 'limits' : { 'memory': "1Gi", 'cpu': "1000m" }
# },
'securityContext': {
'readOnlyRootFilesystem': False,
'allowPrivilegeEscalation': True
},
'tcpport': 6081,
'secrets_requirement' : [ 'abcdesktop/vnc', 'abcdesktop/kerberos']
},

When loading the user desktop post login, the platform is able to read the od.config, but failing to pull the image and throwing the below error and user login is failing.

Warning Failed Failed to pull image "exzadmin/oc.user.ubuntu:0.0.1": failed to pull and unpack image "docker.io/exzadmin/oc.user.ubuntu:0.0.1": failed to resolve reference "docker.io/exzadmin/oc.user.ubuntu:0.0.1": pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed

However, this is a public repository and anyone can download and use it.

Is there anything specific to be done to pull this image properly?

Best regards,
Raghav

Issue related to the External-IP and loadBalancer in a manged Kubernetes deployment

Dear Alexandre,

I was attempting to deploy the ABCDesktop (kubernetes-version-3.0) for testing my setup with a few of my own desktop applications. Everything worked fine when tested locally in my Ubuntu (22.04) machine. I then thought to deploy the setup in a DigitalOcean Kubernetes (DOK) cluster (I currently have a 3 nodes cluster). Because the DOK is a managed Kubernetes, so it was straight forward to use the context and deploy using the install.sh script (https://raw.githubusercontent.com/abcdesktopio/conf/main/kubernetes/install.sh), just for the testing purpose. To access the deployed ABCDesktop from an external IP, I changed the NGINX service type from nodePort to loadBalancer in the abcdesktop.yaml, as below. Saved and applied the chnages using 'kubectl apply -f abcdesktop.yaml'. I can now access the abcdesktop from 'http://<EXTERNAL-IP>', but I am unable to sign-in using login usernames and passwords from the OLDAP test samples. 'Sign-in Anonymously also fails. I get the error message:'undefined'. Any suggestions as to what I may be doing wrong here would be very much appreciated. Following are some of the details.

changes in the nginx service block within the abcdesktop.yaml

kind: Service
apiVersion: v1
metadata:
  name: nginx
  namespace: abcdesktop
spec:
  type: LoadBalancer
  selector:
    run: nginx-od
  ports:
  - protocol: TCP
    port: 80
    targetPort: 80
    nodePort: 30443
    name: http

some additional information about the status of services and nodes in my deployment.

$kubectl get service -w

NAME         TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)   AGE
kubernetes   ClusterIP   xx.yyy.w.z   <none>        443/TCP   50d

$kubectl get nodes -o=wide

 NAME                             STATUS   ROLES    AGE   VERSION   INTERNAL-IP      EXTERNAL-IP       OS-IMAGE                         KERNEL-VERSION           CONTAINER-RUNTIME
        mkp-kubernetes-node-pool-q2r66   Ready    <none>   50d   v1.25.4   xx.yyy.www.zzz   lll.mmm.nnn.ppp   Debian GNU/Linux 11 (bullseye)   5.18.0-0.deb11.4-amd64   containerd://1.4.13
        mkp-kubernetes-node-pool-q2r6l   Ready    <none>   50d   v1.25.4   sss.ppp.uuu.vvv   iii.jjj.kkk.lll    Debian GNU/Linux 11 (bullseye)   5.18.0-0.deb11.4-amd64   containerd://1.4.13
        mkp-kubernetes-node-pool-q2r6t   Ready    <none>   50d   v1.25.4   aaa.bbb.ccc.ddd   uuu.vvv.www.kkk    Debian GNU/Linux 11 (bullseye)   5.18.0-0.deb11.4-amd64   containerd://1.4.13

$kubectl get services -n abcdesktop

NAME        TYPE           CLUSTER-IP       EXTERNAL-IP       PORT(S)           AGE
desktop     ClusterIP      None             <none>            <none>            9h
memcached   ClusterIP      xx.yyy.www.zz    <none>            11211/TCP         9h
mongodb     ClusterIP      aa.bbb.cc.dd     <none>            27017/TCP         9h
nginx       LoadBalancer   ll.jjj.kkk.mmm   <EXTERAL-IP>      80:30443/TCP      9h
openldap    ClusterIP      uu.vvv.www.zzz   <none>            389/TCP,636/TCP   9h
pyos        ClusterIP      ss.ooo.pp.kk    <none>             8000/TCP          9h
speedtest   ClusterIP      ii.jjj.kkk.ll    <none>            80/TCP            9h

Release3.0 and Kubernetes v1.23

Dear Alexandre,
I needed to migrate my abcdesktop deployment from a DigitalOcean cluster to a Openstack-magnum based cluster with Kubernetes COE. Unfortunately, my infrastructure does not support cluster templates with K8 version =>1.24. So, I have only K8-v1.23. Sadly, the Openstack-Magnum is not known for keeping up with the kubernetes versions.

Based on (https://www.abcdesktop.io/2.0/features/), It is not very explicitly clear to me if I can deploy version3.0 on K8-v1.23 or not. Would you please clarify this?

best regards,
Vinay

Abcdesktop is not deployable on Kubernetes clusters.

Hello!

I have a Kubernetes cluster built using microk8s. After following the Kubernetes instructions I find that the daemonset-pyos-* container cannot start because they don't have access to the Docker socket:

MountVolume.SetUp failed for volume "volumesock" : hostPath type check failed: /var/run/docker.sock is not │
│  a socket file

This is expected because Docker is not the container runtime for my cluster. This problem will also prevent abcdesktop.io from running in any of the major cloud vendors, who do not use Docker for Kubernetes anymore.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.