kasmtech / workspaces-core-images

https://www.kasmweb.com
Other
328 stars 117 forks source link

Running the core image failes with segmentation fault #23

Closed legojesus closed 1 year ago

legojesus commented 1 year ago

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?

j-travis commented 1 year ago

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

legojesus commented 1 year ago

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

mmcclaskey commented 1 year ago

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.

legojesus commented 1 year ago

Thanks, that works. Have a great week :)