Dockerを使ったDartの実行環境構築
この記事にはアフィリエイトリンクが含まれています。
はじめに
最近、ミノ駆動さんが書かれた『良いコード/悪いコードで学ぶ設計入門』を読んでいて、そこで初めてポリシーパターンというものを知った。
自分でも実装してみたくなったのでDartで書いてみた。
レポジトリ → https://github.com/okaryo/policy_pattern_in_dart
そのときにDockerを使ってDartの簡単な実行環境を作った。
DartでDocker
Dockerfileは以下のような感じになった。内容自体はシンプル。
FROM dart:2.17.0
WORKDIR /app
COPY pubspec.* ./
RUN dart pub get
COPY ./ /app/
こちらはDockerのDartイメージのドキュメントを参考にした。
dockerコンテナ自体は一つだが、docker
コマンドに色々設定するのがめんどくさいのでdocker-compose
も作った。
version: '3.1'
services:
app:
build:
context: ./
dockerfile: ./docker/Dockerfile
volumes:
- .:/app
command: >
dart run src/main.dart
これでdocker-compose run app
でmainファイルが起動するようになった。
おわり
Dartでdockerを使っている会社やチームってあるんだろうか?と思って、我らがpub.devのGithubを見てみるとdockerを使っていた!
おそらくこのブログ記事を見るよりこのDockerfileを見た方が学べるものがたくさんある気がする。。
https://github.com/dart-lang/pub-dev/blob/master/Dockerfile
宣伝
SUZURIでオリジナルグッズを作って販売しています。よければ見てみてください。
こんなのを作ったりしています。