TheGameをつくる①~下準備~
目次
TheGameってご存知?
年末は友人たちと集まってボードゲームをするんですが、
いつも持ち寄られたボードゲームを遊んでばかりだったので、
「今年は自分でも何か」ということでかったのがこちら。
https://www.amazon.co.jp/%E3%82%A2%E3%83%BC%E3%82%AF%E3%83%A9%E3%82%A4%E3%83%88-Arclight-GAME-%E3%82%AA%E3%83%90%E3%82%B1%E3%82%84%E3%81%97%E3%81%8D%E3%81%AE%E3%81%99%E3%81%86%E3%81%98%E3%81%AE%E3%82%A2%E3%82%AF%E3%83%9E/dp/B07P21F52C
リングフィットアドベンチャーを求めて近所のお店にいって見つけてついでに買った代物。
2~99をすべて場に出し切る単純なゲームではあるが、なかなかに難しかった。
リングフィットアドベンチャーはない。
それで。
ある程度、ルールに慣れてきても完全攻略(場に2~99を出し切る)の達成率が低く、
攻略法を探りたい。ので、つくってできるか知らんけどSageMakerなりにぶち込んで、
強化学習させたら面白いんじゃないのか?
ということでやってみることにした。
とりあえず下準備
やってみることにはしたけどまずはゲームを作るところからだなーということで、今回は 準備まで。
SageMaker使いたいだけなら、DeepRacerで十分だと思う。
が、この課題には目的があって
・SageMakerつかってみたい。
・Pythonをもっと呼吸をするような感じで触れるようになりたい。
・Pytestつかってみたい。
・コンテナ環境のみで開発してみたい。
ということを満たすために、開発環境は
Docker For Windows。を使って、コンテナ上でごりって行くことにした。
Dockerfile
<p> FROM python:3 USER root #基本準備 RUN apt-get update RUN apt-get install -y vim less RUN pip install --upgrade pip RUN pip install --upgrade setuptools WORKDIR /root/src # gitの準備(これ書いとくと便利) RUN git config --global user.name ----------- RUN git config --global user.email ----------- #clone RUN git clone https://github.com/yukiYamada/TheGame.git WORKDIR /root/src/TheGame RUN pip install -r requirements.txt ENV LANG ja_JP.UTF-8 ENV LANGUAGE ja_JP:ja ENV LC_ALL ja_JP.UTF-8 EXPOSE 8002 CMD ["bash"] 雑に書いたがこれでとりあえずPythonは動かせるし、自動でGitもCloneしてくれてるところからスタートできる。 </p>
Compose
version: '3' services: thegame: restart: always build: . container_name: 'thegame' ports: - "8002:8002" working_dir: '/root' tty: true
とりあえずこれだけあれば、
docker-compose build --no-cache
docker-compose up -d
docker-compose exec thegame bash
とコマンドをぶち込めばいつでもどこでも途中の環境に乗り込めるって感じだ。
gitリポジトリ
勉強もかねてCodePipelineとか、AWSCommitを使ってみるのもよさそうだったが。
Git Actionもまだちゃんと使えてないので今回はGitにすることにした。あとわからないことが多すぎて、
作業が進まずとん挫するのを避けたかった。順番にゆっくりやらないとね。