diff --git a/Dockerfile b/Dockerfile index 3f31254..fadfa26 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,8 +2,6 @@ FROM ubuntu:16.04 MAINTAINER Tomohisa Kusano -ENV CHROME_REMOTE_DESKTOP_DEFAULT_DESKTOP_SIZES 1024x768 - COPY copyables / ADD https://dl.google.com/linux/linux_signing_key.pub /tmp/ @@ -18,15 +16,24 @@ RUN apt-key add /tmp/linux_signing_key.pub \ pulseaudio \ supervisor \ x11vnc \ + fluxbox \ && dpkg -i /tmp/libgcrypt11_*.deb \ && apt-get clean \ - && rm -rf /var/cache/* /var/log/apt/* /tmp/* \ + && rm -rf /var/cache/* /var/log/apt/* /var/lib/apt/lists/* /tmp/* \ && addgroup chrome-remote-desktop \ && useradd -m -G chrome-remote-desktop,pulse-access chrome \ && ln -s /crdonly /usr/local/sbin/crdonly \ && ln -s /update /usr/local/sbin/update \ && mkdir -p /home/chrome/.config/chrome-remote-desktop \ - && chown -R chrome:chrome /home/chrome/.config + && chown -R chrome:chrome /home/chrome/.config \ + && mkdir -p /home/chrome/.fluxbox \ + && echo $' \n\ + session.screen0.defaultDeco: NONE \n\ + session.screen0.toolbar.visible: NONE \n\ + session.screen0.fullMaximization: true \n\ + session.screen0.maxDisableResize: true \n\ + session.screen0.maxDisableMove: true \n\ + ' >> /home/chrome/.fluxbox/init VOLUME ["/home/chrome"] diff --git a/README.md b/README.md index 50552c6..707d44f 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,11 @@ - - Screen size is currently hardcoded as 1024x768. - - A testing branch for [RandR](https://en.wikipedia.org/wiki/RandR) (i.e. "Resize desktop to fit" in CRD client) is available; Use Docker image tag **:randr**. + - The testing branch for [RandR](https://en.wikipedia.org/wiki/RandR) (i.e. "Resize desktop to fit" in CRD client) is merged into master/latest. Google Chrome via VNC == `docker run -p 127.0.0.1:5900:5900 siomiz/chrome` - Google Chrome, not Chromium, for the ease of Flash plugin management - - on Xvfb + - on Xvfb, with FluxBox (no window decorations) - served by X11VNC (no password; assuming usage via SSH) Must agree to [Google Chrome ToS][1] to use. @@ -16,11 +15,9 @@ Google Chrome via Chrome Remote Desktop ... so you can use the full Google Chrome with Flash on iPad (with preliminary sound support)! Much faster than VNC thanks to VP8! -No "desktop"; session goes straight to a maximized chrome. - Prerequisite: Create a Profile Volume -- -You need a VNC client for the initial setup. +You need a VNC client for the initial setup. 1. `docker run -d --name chrome-profile siomiz/chrome` (NO password so DO NOT simply use -p 5900:5900 to expose it to the world!) 2. Connect to the container via VNC. Find the container's IP address by `docker inspect -f '{{ .NetworkSettings.IPAddress }}' chrome-profile` @@ -34,8 +31,6 @@ Usage `docker run -d --volumes-from chrome-profile siomiz/chrome /crdonly` (no port needs to be exposed) `/crdonly` command will run chrome-remote-desktop in foreground. -On first connection (and after an "unclean" container stop) you will get a "Profile Locked / owned by different process" dialog, which you can just select "Relaunch". - Docker ホスト(ヘッドレス可!)で走らせれば、「艦これ」等 Flash ブラウザゲームを iPad/iPhone/Android 等上の Chrome リモート デスクトップ アプリで一応プレイ可能になります。サウンド付き(遅延があります)。 Chrome は英語版ですが、Web ページ用の日本語フォントは含まれています。[詳しくはこちら。][3] diff --git a/copyables/crd-session b/copyables/crd-session index 156f609..cfd042e 100644 --- a/copyables/crd-session +++ b/copyables/crd-session @@ -1 +1,2 @@ +rm -rf /home/chrome/.config/chrome-remote-desktop/chrome-profile/Singleton* exec /opt/google/chrome/chrome --no-sandbox --window-position=0,0 --window-size=1024,768 --force-device-scale-factor=1 diff --git a/copyables/etc/supervisor/conf.d/supervisord-crdonly.conf b/copyables/etc/supervisor/conf.d/supervisord-crdonly.conf index d16d5ec..28fd2f2 100644 --- a/copyables/etc/supervisor/conf.d/supervisord-crdonly.conf +++ b/copyables/etc/supervisor/conf.d/supervisord-crdonly.conf @@ -2,8 +2,15 @@ nodaemon=true [program:crd] -environment=HOME="/home/chrome",USER="chrome",CHROME_REMOTE_DESKTOP_DEFAULT_DESKTOP_SIZES="1024x768" +environment=HOME="/home/chrome",USER="chrome" command=/usr/bin/python /opt/google/chrome-remote-desktop/chrome-remote-desktop --start --foreground --config=/home/chrome/.config/chrome-remote-desktop/~host.json user=chrome autorestart=true priority=200 + +[program:fluxbox] +environment=DISPLAY=":20",HOME="/home/chrome",USER="chrome",XAUTHORITY="/home/chrome/.Xauthority" +command=/usr/bin/fluxbox +user=chrome +autorestart=true +startretries=60 diff --git a/copyables/usr/bin/Xvfb-randr b/copyables/usr/bin/Xvfb-randr deleted file mode 100755 index c2e242c..0000000 Binary files a/copyables/usr/bin/Xvfb-randr and /dev/null differ