Не удается подключиться к серверу окон X11 при запуске rattle() в контейнере Docker
Я пытаюсь установить rattle() на Mac OS 10.12.6 и R 3.4.3. Я попробовал три метода устранения неполадок, предложенных онлайн, но безрезультатно. Основываясь на комментариях онлайн, я подозреваю, что для некоторых людей проблема все еще сохраняется, как это делает для меня.
Вот методы, которые я попробовал:
- Доморощенный путь: https://gist.github.com/zhiyzuo/a489ffdcc5da87f28f8589a55aa206dd
- Способ MacPorts: http://marcoghislanzoni.com/blog/2014/08/29/solved-installing-rattle-r-3-1-mac-os-x-10-9/
- Способ Docker: установите RGtk2 на macOS Sierra 10.12.6 и R версии 3.4.1 (см. Полезный комментарий Грэма Уильяма)
Последний метод доставляет меня туда почти. В этом методе погремушка запускается в док-контейнере. Однако, когда я следую инструкциям и запускаю sh /run.sh, он делает это:
Rscript -e 'install.packages ("JGR_1.7-16.tar.gz", repos = NULL)'
Rscript -e 'install.packages ("Deducer_0.7-9.tar.gz", repos = NULL)'
Я получил:
Error: package or namespace load failed for 'iplots': .onLoad failed in loadNamespace() for 'iplots', details: call: .jnew("org/rosuda/iplots/Framework") error: java.awt.AWTError: Can't connect to X11 window server using 'xxx.xxx.x.xxx:0.0' as the value of the DISPLAY variable.
(Xxx.xxx.x.xxx - мой IP-адрес.)
Впоследствии, когда я запускаю R и загружаю погремушку, это не работает. я получил
R session is headless; GTK+ not initialized. Rattle: A free graphical interface for data science with R. Version 5.1.0 Copyright (c) 2006-2017 Togaware Pty Ltd. Type 'rattle()' to shake, rattle, and roll your data.
Когда я гремлю (), я получаю:
Error in rattle() : Can't load RGtk2. A windowing system can't be accessed? Maybe you are using a remote terminal (ssh) or RStudio browser connection. Consider using remote desktop, ssh -X, or X2Go depending on your platform. Running rattle() locally on a desktop is the default.
Я получаю один и тот же результат, независимо от того, использую ли я терминал Mac OS или терминал XQuartz.
Любые предложения будут приветствоваться! Спасибо!