〇Robocodeの画面
Remote Desktop Clientから接続するときにユーザ名/パスワードにubuntu/ubuntuを指定します。
イメージのビルド
以下のコマンドを実行して、イメージをビルドします。docker build -t ub1804xfcerobocode .
Dockerfile
from ubuntu:18.04
run apt-get update \
&& apt-get install -y language-pack-ja-base language-pack-ja \
&& ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime \
&& echo 'Asia/Tokyo' > /etc/timezone \
&& locale-gen ja_JP.UTF-8 \
&& echo 'LC_ALL=ja_JP.UTF-8' > /etc/default/locale \
&& echo 'LANG=ja_JP.UTF-8' >> /etc/default/locale
env LANG=ja_JP.UTF-8 \
LANGUAGE=ja_JP.UTF-8 \
LC_ALL=ja_JP.UTF-8
run DEBIAN_FRONTEND=noninteractive apt-get -y install \
xubuntu-desktop \
xrdp=0.9.5-2 \
fcitx-mozc \
fonts-ipafont-gothic \
fonts-ipafont-mincho \
vim \
gvfs-bin \
xdg-utils \
openjdk-11-jdk \
&& mkdir -p /opt/robocode \
&& cd /opt/robocode \
&& wget 'https://sourceforge.net/projects/robocode/files/robocode/1.9.3.4/robocode-1.9.3.4-setup.jar' \
&& jar xvf robocode-1.9.3.4-setup.jar \
&& chmod +x /opt/robocode/robocode.sh \
&& echo '[Desktop Entry]' > /usr/share/applications/robocode.desktop \
&& echo 'Type=Application' >> /usr/share/applications/robocode.desktop \
&& echo 'Version=1.0' >> /usr/share/applications/robocode.desktop \
&& echo 'Name=Robocode' >> /usr/share/applications/robocode.desktop \
&& echo 'GenericName=Tank AI programming game for Java and .NET' >> /usr/share/applications/robocode.desktop \
&& echo 'Comment=Build the best - destroy the rest!' >> /usr/share/applications/robocode.desktop \
&& echo 'Icon=/opt/robocode/desktop/robocode.png' >> /usr/share/applications/robocode.desktop \
&& echo 'Exec=/opt/robocode/robocode.sh' >> /usr/share/applications/robocode.desktop \
&& echo 'Categories=Game;StrategyGame;' >> /usr/share/applications/robocode.desktop \
&& im-config -n fcitx \
&& apt-get clean \
&& rm -rf /var/cache/apt/archives/* \
&& rm -rf /var/lib/apt/lists/* \
&& groupadd -g 1000 ubuntu \
&& useradd -d /home/ubuntu -m -s /bin/bash -u 1000 -g 1000 ubuntu \
&& echo 'ubuntu:ubuntu' | chpasswd \
&& echo "ubuntu ALL=NOPASSWD: ALL" >> /etc/sudoers \
&& echo 'sed -i -e "s/^EnabledIMList.*$/EnabledIMList=fcitx-keyboard-jp:True,mozc:True,fcitx-keyboard-us:False/" /home/ubuntu/.config/fcitx/profile' >> /home/ubuntu/.xsessionrc \
&& chown ubuntu:ubuntu /home/ubuntu/.xsessionrc \
&& echo 'xfce4-session' >> /home/ubuntu/.xsession \
&& mkdir /home/ubuntu/data \
&& chown -R ubuntu:ubuntu /home/ubuntu/data \
&& echo '#!/bin/bash' > /start.sh \
&& echo 'export GTK_IM_MODULE=fcitx' > /start.sh \
&& echo 'export QT_IM_MODULE=fcitx' >> /start.sh \
&& echo 'export XMODIFIERS="@im=fcitx"' >> /start.sh \
&& echo 'startxfce4' >> /start.sh \
&& echo 'sudo /etc/init.d/xrdp start' >> /start.sh \
&& echo 'sudo /etc/init.d/dbus start' >> /start.sh \
&& echo 'fcitx -r -d &' >> /start.sh \
&& echo '/bin/bash' >> /start.sh \
&& chmod +x /start.sh
expose 3389
volume ["/home/ubuntu/data"]
cmd /start.sh
コンテナの実行
以下のコマンドでコンテナを実行します。docker run -it -v `pwd`:/home/ubuntu/work -p 3389:3389 -u ubuntu ub1804xfcerobocode
関連情報
・Robocodeに関する他の記事はこちらを参照してください。・Robocodeのホームページ
https://robocode.sourceforge.io/
・ゲームに関する記事一覧は、こちらを参照してください。
0 件のコメント:
コメントを投稿