kasmtech/workspaces-core-images

Running the core image failes with segmentation fault

legojesus opened this issue · 4 comments

Hey,

I'm trying to build the core image from this docker file: https://github.com/kasmtech/workspaces-core-images/blob/develop/dockerfile-kasm-core

The build is successful, but when running it I get a segmentation fault from vncserver. Here are my exact steps:

  1. Cloned the repo to my computer.
  2. docker build -t base_test -f dockerfile-kasm-core .
  3. Ran the image as instructed in the README file: docker run --rm -it --shm-size=512m -p 6901:6901 -e VNC_PW=password base_test

Here's what I get as output:

+ DEFAULT_PROFILE_HOME=/home/kasm-default-profile
+ PROFILE_SYNC_DIR=/kasm_profile_sync
+ '[' -f /home/kasm-user/.bashrc ']'
+ echo 'Profile Sync Directory Does Not Exist. No Sync will occur'
Profile Sync Directory Does Not Exist. No Sync will occur
+ copy_default_profile_to_home
+ echo 'Copying default profile to home directory'
Copying default profile to home directory
+ cp -rp /home/kasm-default-profile/. /home/kasm-user/
+ ls -la /home/kasm-user
total 32
drwxrwxrwx 1 kasm-user root      4096 Dec  4 12:46 .
drwxr-xr-x 1 root      root      4096 Dec  4 12:47 ..
-rw-r--r-- 1 kasm-user kasm-user   43 Dec  4 12:46 .bashrc
drwxrwxrwx 2 kasm-user kasm-user 4096 Dec  4 11:39 .cache
drwxrwxrwx 3 kasm-user kasm-user 4096 Dec  4 11:40 .config
drwxrwxrwx 2 kasm-user kasm-user 4096 Dec  4 11:37 Desktop
drwxrwxrwx 3 kasm-user kasm-user 4096 Dec  4 11:41 .pki
-rw-r--r-- 1 kasm-user kasm-user    0 Dec  4 12:47 .Xauthority
+ verify_profile_config
+ echo 'Verifying Uploads/Downloads Configurations'
Verifying Uploads/Downloads Configurations
+ mkdir -p /home/kasm-user/Uploads
+ '[' -d /home/kasm-user/Desktop/Uploads ']'
+ echo 'Creating Uploads Desktop Symlink'
Creating Uploads Desktop Symlink
+ ln -sf /home/kasm-user/Uploads /home/kasm-user/Desktop/Uploads
+ mkdir -p /home/kasm-user/Downloads
+ '[' -d /home/kasm-user/Desktop/Downloads ']'
+ echo 'Creating Download Desktop Symlink'
Creating Download Desktop Symlink
+ ln -sf /home/kasm-user/Downloads /home/kasm-user/Desktop/Downloads
+ '[' -d /usr/share/kasmvnc/Downloads/Downloads ']'
+ echo 'Creating Downloads RX Symlink'
Creating Downloads RX Symlink
+ ln -sf /home/kasm-user/Downloads /usr/share/kasmvnc/www/Downloads/Downloads
+ ls -la /home/kasm-user/Desktop
total 8
drwxrwxrwx 2 kasm-user kasm-user 4096 Dec  4 12:48 .
drwxrwxrwx 1 kasm-user root      4096 Dec  4 12:48 ..
lrwxrwxrwx 1 kasm-user kasm-user   25 Dec  4 12:48 Downloads -> /home/kasm-user/Downloads
lrwxrwxrwx 1 kasm-user kasm-user   23 Dec  4 12:48 Uploads -> /home/kasm-user/Uploads
+ rm -rf /home/kasm-user/.config/pulse
+ echo 'Removing Default Profile Directory'
Removing Default Profile Directory
+ rm -rf /home/kasm-default-profile/Desktop
+ echo -e '\n\n------------------ EXECUTE COMMAND ------------------'


------------------ EXECUTE COMMAND ------------------
+ echo 'Executing command: '\''/dockerstartup/vnc_startup.sh' /dockerstartup/kasm_startup.sh '--wait'\'''
Executing command: '/dockerstartup/vnc_startup.sh /dockerstartup/kasm_startup.sh --wait'
+ exec /dockerstartup/vnc_startup.sh /dockerstartup/kasm_startup.sh --wait
Generating a RSA private key
............+++++
.............+++++
writing new private key to '/home/kasm-user/.vnc/self.pem'
-----
Creating default config /home/kasm-user/.vnc/kasmvnc.yaml
Could not start Xvnc.

 2022-12-04 12:48:52,190 [DEBUG] Config: set VideoArea(Int) to 45
 2022-12-04 12:48:52,190 [DEBUG] Config: set ClientWaitTimeMillis(Int) to 30000
 2022-12-04 12:48:52,190 [DEBUG] Config: set PasswordFile(String) to /home/kasm-user/.vnc/passwd
 2022-12-04 12:48:52,190 [DEBUG] Config: set rfbport(Int) to 5901
_XSERVTransmkdir: ERROR: euid != 0,directory /tmp/.X11-unix will not be created.

Xvnc KasmVNC 0.9.779c54f7eecc0bd5975636c9e314395ebf1ed95a - built Dec  1 2022 12:29:19
Copyright (C) 1999-2018 KasmVNC Team and many others (see README.me)
See http://kasmweb.com for information on KasmVNC.
Underlying X server release 12008000, The X.Org Foundation

 2022-12-04 12:48:52,190 [DEBUG] vncext: Adding DLP binary mime type chromium/x-web-custom-data
 2022-12-04 12:48:52,190 [DEBUG] vncext: Adding DLP binary mime type text/html
 2022-12-04 12:48:52,190 [DEBUG] vncext: Adding DLP binary mime type image/png
 2022-12-04 12:48:52,190 [DEBUG] vncext: Total 3 binary mime types
 2022-12-04 12:48:52,190 [INFO] ICE: Querying public IP...
 2022-12-04 12:48:52,190 [DEBUG] ICE: Trying 'stun.l.google.com', port 19302
 2022-12-04 12:48:52,260 [DEBUG] Config: set publicIP(String) to 46.117.12.75
 2022-12-04 12:48:52,260 [INFO] ICE: My public IP is 46.117.12.75
 2022-12-04 12:48:52,260 [INFO] vncext: VNC extension running!
 2022-12-04 12:48:52,260 [DEBUG] Config: set immutable AllowOverride
 2022-12-04 12:48:52,261 [INFO] vncext: Listening for websocket connections on 0.0.0.0 interface(s), port 6901
 2022-12-04 12:48:52,261 [DEBUG] VNCServerST: creating single-threaded server 459a65d062ce:1 (kasm-user)
 2022-12-04 12:48:52,261 [INFO] VNCServerST: CPU capability: SSE2 yes, AVX512f no
 2022-12-04 12:48:52,261 [INFO] vncext: created VNC server for screen 0
(EE) 
(EE) Backtrace:
(EE) 0: /usr/bin/Xvnc (OsLookupColor+0x13c) [0x5fa52c]
(EE) 1: /usr/lib/x86_64-linux-gnu/libpthread.so.0 (funlockfile+0x60) [0x7fa7aee1d47f]
(EE) 2: /lib64/ld-linux-x86-64.so.2 (_dl_find_dso_for_object+0x2a25) [0x7fa7aeee98c5]
(EE) 3: /usr/lib/x86_64-linux-gnu/libc.so.6 (_dl_catch_exception+0x88) [0x7fa7ae203928]
(EE) 4: /usr/lib/x86_64-linux-gnu/libc.so.6 (_dl_catch_error+0x33) [0x7fa7ae2039f3]
(EE) 5: /usr/lib/x86_64-linux-gnu/libdl.so.2 (dlerror+0x319) [0x7fa7aee04e09]
(EE) 6: /usr/lib/x86_64-linux-gnu/libdl.so.2 (dlclose+0x28) [0x7fa7aee04468]
(EE) 7: /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so (nouveau_drm_screen_create+0x1d6c88) [0x7fa7a71f5728]
(EE) 8: /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so (nouveau_drm_screen_create+0x1d6143) [0x7fa7a71f4043]
(EE) unw_get_proc_name failed: no unwind info found [-10]
(EE) 9: /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so (?+0x0) [0x7fa7a6571920]
(EE) 10: /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so (__driDriverGetExtensions_d3d12+0x668ddb) [0x7fa7a72437bb]
(EE) 11: /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so (__driDriverGetExtensions_d3d12+0x668d2c) [0x7fa7a72435ec]
(EE) 12: /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so (__driDriverGetExtensions_d3d12+0x738) [0x7fa7a65729f8]
(EE) 13: /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so (__driDriverGetExtensions_d3d12+0xa3b5) [0x7fa7a6586125]
(EE) 14: /usr/bin/Xvnc (__glGetProcAddress+0x68a) [0x49b6fa]
(EE) 15: /usr/bin/Xvnc (RecordCreateSet+0x5b7) [0x49a527]
(EE) 16: /usr/bin/Xvnc (_CallCallbacks+0x3c) [0x5ad53c]
(EE) 17: /usr/bin/Xvnc (GlxExtensionInit+0x152) [0x4b9dd2]
(EE) 18: /usr/bin/Xvnc (InitExtensions+0x89) [0x46d1d9]
(EE) 19: /usr/bin/Xvnc (dix_main+0x1ad) [0x5abfed]
(EE) 20: /usr/lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0xf3) [0x7fa7ae0c7083]
(EE) 21: /usr/bin/Xvnc (_start+0x2e) [0x46a14e]
(EE) 
(EE) Segmentation fault at address 0x31f
(EE) 
Fatal server error:
(EE) Caught signal 11 (Segmentation fault). Server aborting
(EE) 

I haven't touched/edited any files in this repo, straight out cloned it and tried to build. Any suggestions? Am I missing anything?

We leverage graphics libraries from mesa in this project. Unfortunately it looks like they pushed something this weekend that breaks us. We have folks working on a solution - hopefully it will be resolved in the next day or so.

Sorry, just bad timing

Yeah I figured it might be something of that sort.
Thanks for the info! Waiting for a fix :)

The fix was merged in, you will need to git pull origin to get the update, then rebuild the docker image. Also you will need to add an argument --build-arg START_XFCE4=1 to your docker build, our README needs updated, we will get that updated shortly.

Thanks, that works.
Have a great week :)