PCに関する雑多な記録

PCに関する諸々の備忘録に変身。

Dockerの中でubuntu16.04上のwine1.6を動かしてtvrockをスレーブで動かす

2017年12月29日 | ubuntu

wine2.0からtvrockをスレーブで動かすと特定のアドレスで落ちるので、なんとかならんかなぁと考えてでた結論がDockerで動かせばいいじゃない。

Dockerfile

FROM ubuntu:16.04
ADD repo_change.sh /root/
RUN /root/repo_change.sh
RUN dpkg --add-architecture i386
RUN echo ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select no | debconf-set-selections
RUN echo ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select false | debconf-set-selections
RUN apt-get update
RUN apt-get -y install ttf-mscorefonts-installer
RUN apt-get -y install wine1.6
ADD msgothic.ttc /usr/share/fonts/truetype/misc/
RUN apt-get -y install language-pack-ja-base language-pack-ja
RUN locale-gen ja_JP.UTF-8
ADD localtime /etc/
ENV LANG ja_JP.UTF-8
ENV LC_TIME ja_JP.UTF-8
ENV LANGUAGE ja:en
CMD wine /root/tvrock/tvrock.exe

管理用スクリプト

-- from here --
#!/bin/bash

build() {
docker build -t horita/tvrock .
}

run() {
docker run --hostname=tvrock_slave --add-host tvrock:172.22.10.35 --net=my_nw --ip=192.168.1.2 -itd --name horita_tvrock -e DISPLAY=$DISPLAY -v /tmp/.X11-unix/:/tmp/.X11-unix -v `pwd`/tvrock:/root/tvrock -v `pwd`/wine:/root/.wine horita/tvrock
}

stop() {
docker stop horita_tvrock
}

remove() {
docker rm horita_tvrock
}

rebuild() {
stop
remove
run
}

tvrock() {
docker-enter horita_tvrock wine /root/tvrock/tvrock.exe
}

enter() {
docker-enter horita_tvrock
}

create_network() {
docker network create --subnet=192.168.1.0/24 my_nw
}

$1
-- end 

親機でXのセキュリティを変更したうえで...

一度create_networkしてbuild,rebuildで勝手にバックグラウンドで起動する。マスターはtvrockという名前にしておけば、IPはコンテナ起動時に渡せる。

docker run のオプションにあるように親機にtvrockの実行ファイルとか.wineのディレクトリとかを持っておけば、コンテナ再起動しても消えない。

これでこの辺のファイル郡とコンテナイメージがあれば、Ubuntuのバージョンが上がっても、安心してtvrockがスレーブで動く。┐(´д`)┌ヤレヤレ

 


コメントを投稿