DockerでBASICを動かす

Docker

Dockerを学ぶためにDocker関連の記事を探していると、Qiitの古い記事に【2019年9月版】台風も直撃して通勤もままならないので BASIC でプログラマの本能を呼び起そうかの記事があったので、TRYしてみました。

bwbasicを使う

参考とする記事では、Linuxで動くBASICインタプリタのbwbasicを使用しています。

bwbasicの関連記事Linux で動くBASICによると、bwbasicは、下記のコマンドでインストール出来るようです。

Dockerファイルの修正

参考とする記事には、基本的なDockerファイルが掲載されているので、下記の様に修正して使用することとしました。
修正ポイントは、nanoエディタをインストールとDockerfileの最適化です。

  • ベースイメージのバージョン指定:
    ubuntu のタグを ubuntu:latest に明示的に指定。
  • 不要な空白行の削除:
    シンプルにするため、コマンド間の空白行を削除。
  • コマンドの統合:
    apt の後に autoremoveclean を追加し、不要なパッケージとキャッシュを削除。
    これにより、イメージサイズが減少します。
  • VOLUMEの削除:
    コンテナ起動時の-v オプションで永続化を指定するように変更。

Dockerイメージの作成

修正したDockerfileを使用して、下記のコマンドでbwbasicイメージファイルをビルドします。

作成したイメージファイルの確認

bwbasicコンテナの起動

作成したbwbasicイメージを元に下記のコマンドでコンテナを起動して、コンテナに入ります。

bwbasicを動かす

下記コマンドを入力し、コンテナ内でbwbasicを起動します。

基本のBASICコマンド動作確認

サンプルプログラムの作成と起動

bwbasicで動く数字当てゲームをnanoエディタで作成し動かします。

数字当てゲームは下記の通りです

  1. 目的: 1から100までのランダムな数字を当てる。
  2. 遊び方:
    • ゲーム開始後、予想する数字を入力します。
    • 入力後、以下のフィードバックが表示されます:
      • 「もっと大きな数字です!」:予想が小さい場合。
      • 「もっと小さな数字です!」:予想が大きい場合。
  3. 正解:
    • 正解すると「おめでとうございます!正解は ○○ でした!」と表示されます。
  4. もう一度遊ぶ:
    • 正解後に再挑戦するかを尋ねられます。
    • Y または y を入力すると再挑戦できます。
    • N または n を入力するとゲームが終了します。

タイトルとURLをコピーしました