Adding Dockerfiles for beta, dev, and old (#775)

diff --git a/cloud_run.Dockerfile b/cloud_run.Dockerfile
index f479b48..09f0a8a 100644
--- a/cloud_run.Dockerfile
+++ b/cloud_run.Dockerfile
@@ -39,4 +39,4 @@
 CMD []
 
 ENTRYPOINT ["/dart_runtime/dart_cloud_run.sh", "--port", "${PORT}", \
-  "--redis-url", "redis://10.0.0.4:6379", "--channel", "stable"]
+  "--redis-url", "redis://10.0.0.4:6379", "--channel", ""${FLUTTER_CHANNEL}""]
diff --git a/cloud_run_beta.Dockerfile b/cloud_run_beta.Dockerfile
new file mode 100644
index 0000000..c7ce2bc
--- /dev/null
+++ b/cloud_run_beta.Dockerfile
@@ -0,0 +1,42 @@
+FROM dart:2.14.4
+
+# We install unzip and remove the apt-index again to keep the
+# docker image diff small.
+RUN apt-get update && \
+  apt-get install -y unzip && \
+  rm -rf /var/lib/apt/lists/*
+
+WORKDIR /app
+RUN groupadd --system dart && \
+  useradd --no-log-init --system --home /home/dart --create-home -g dart dart
+RUN chown dart:dart /app
+
+# Work around https://github.com/dart-lang/sdk/issues/47093
+RUN find /usr/lib/dart -type d -exec chmod 755 {} \;
+
+# Switch to a new, non-root user to use the flutter tool.
+# The Flutter tool won't perform its actions when run as root.
+USER dart
+
+COPY --chown=dart:dart tool/dart_cloud_run.sh /dart_runtime/
+RUN chmod a+x /dart_runtime/dart_cloud_run.sh
+COPY --chown=dart:dart pubspec.* /app/
+RUN dart pub get
+COPY --chown=dart:dart . /app
+RUN dart pub get --offline
+
+ENV PATH="/home/dart/.pub-cache/bin:${PATH}"
+ENV FLUTTER_CHANNEL="beta"
+
+# Set the Flutter SDK up for web compilation.
+RUN dart pub run grinder setup-flutter-sdk
+
+# Build the dill file
+RUN dart pub run grinder build-storage-artifacts validate-storage-artifacts
+
+# Clear out any arguments the base images might have set and ensure we start
+# the Dart app using custom script enabling debug modes.
+CMD []
+
+ENTRYPOINT ["/dart_runtime/dart_cloud_run.sh", "--port", "${PORT}", \
+  "--redis-url", "redis://10.0.0.4:6379", "--null-safety", "--channel", "${FLUTTER_CHANNEL}"]
diff --git a/cloud_run_dev.Dockerfile b/cloud_run_dev.Dockerfile
new file mode 100644
index 0000000..f60996d
--- /dev/null
+++ b/cloud_run_dev.Dockerfile
@@ -0,0 +1,42 @@
+FROM dart:2.14.4
+
+# We install unzip and remove the apt-index again to keep the
+# docker image diff small.
+RUN apt-get update && \
+  apt-get install -y unzip && \
+  rm -rf /var/lib/apt/lists/*
+
+WORKDIR /app
+RUN groupadd --system dart && \
+  useradd --no-log-init --system --home /home/dart --create-home -g dart dart
+RUN chown dart:dart /app
+
+# Work around https://github.com/dart-lang/sdk/issues/47093
+RUN find /usr/lib/dart -type d -exec chmod 755 {} \;
+
+# Switch to a new, non-root user to use the flutter tool.
+# The Flutter tool won't perform its actions when run as root.
+USER dart
+
+COPY --chown=dart:dart tool/dart_cloud_run.sh /dart_runtime/
+RUN chmod a+x /dart_runtime/dart_cloud_run.sh
+COPY --chown=dart:dart pubspec.* /app/
+RUN dart pub get
+COPY --chown=dart:dart . /app
+RUN dart pub get --offline
+
+ENV PATH="/home/dart/.pub-cache/bin:${PATH}"
+ENV FLUTTER_CHANNEL="dev"
+
+# Set the Flutter SDK up for web compilation.
+RUN dart pub run grinder setup-flutter-sdk
+
+# Build the dill file
+RUN dart pub run grinder build-storage-artifacts validate-storage-artifacts
+
+# Clear out any arguments the base images might have set and ensure we start
+# the Dart app using custom script enabling debug modes.
+CMD []
+
+ENTRYPOINT ["/dart_runtime/dart_cloud_run.sh", "--port", "${PORT}", \
+  "--redis-url", "redis://10.0.0.4:6379", "--null-safety", "--channel", "${FLUTTER_CHANNEL}"]
diff --git a/cloud_run_null_safety.Dockerfile b/cloud_run_null_safety.Dockerfile
index 4622fcc..1ca4be1 100644
--- a/cloud_run_null_safety.Dockerfile
+++ b/cloud_run_null_safety.Dockerfile
@@ -39,4 +39,4 @@
 CMD []
 
 ENTRYPOINT ["/dart_runtime/dart_cloud_run.sh", "--port", "${PORT}", \
-  "--redis-url", "redis://10.0.0.4:6379", "--null-safety", "--channel", "stable"]
+  "--redis-url", "redis://10.0.0.4:6379", "--null-safety", "--channel", ""${FLUTTER_CHANNEL}""]
diff --git a/cloud_run_old.Dockerfile b/cloud_run_old.Dockerfile
new file mode 100644
index 0000000..c5c6699
--- /dev/null
+++ b/cloud_run_old.Dockerfile
@@ -0,0 +1,42 @@
+FROM dart:2.14.4
+
+# We install unzip and remove the apt-index again to keep the
+# docker image diff small.
+RUN apt-get update && \
+  apt-get install -y unzip && \
+  rm -rf /var/lib/apt/lists/*
+
+WORKDIR /app
+RUN groupadd --system dart && \
+  useradd --no-log-init --system --home /home/dart --create-home -g dart dart
+RUN chown dart:dart /app
+
+# Work around https://github.com/dart-lang/sdk/issues/47093
+RUN find /usr/lib/dart -type d -exec chmod 755 {} \;
+
+# Switch to a new, non-root user to use the flutter tool.
+# The Flutter tool won't perform its actions when run as root.
+USER dart
+
+COPY --chown=dart:dart tool/dart_cloud_run.sh /dart_runtime/
+RUN chmod a+x /dart_runtime/dart_cloud_run.sh
+COPY --chown=dart:dart pubspec.* /app/
+RUN dart pub get
+COPY --chown=dart:dart . /app
+RUN dart pub get --offline
+
+ENV PATH="/home/dart/.pub-cache/bin:${PATH}"
+ENV FLUTTER_CHANNEL="old"
+
+# Set the Flutter SDK up for web compilation.
+RUN dart pub run grinder setup-flutter-sdk
+
+# Build the dill file
+RUN dart pub run grinder build-storage-artifacts validate-storage-artifacts
+
+# Clear out any arguments the base images might have set and ensure we start
+# the Dart app using custom script enabling debug modes.
+CMD []
+
+ENTRYPOINT ["/dart_runtime/dart_cloud_run.sh", "--port", "${PORT}", \
+  "--redis-url", "redis://10.0.0.4:6379", "--null-safety", "--channel", "${FLUTTER_CHANNEL}"]
diff --git a/tool/pub_dependencies_beta.json b/tool/pub_dependencies_beta.json
index c1de4e2..5cbf8cf 100644
--- a/tool/pub_dependencies_beta.json
+++ b/tool/pub_dependencies_beta.json
@@ -60,7 +60,7 @@
   "pedantic": "1.11.1",
   "platform": "3.0.2",
   "plugin_platform_interface": "2.0.2",
-  "process": "4.2.3",
+  "process": "4.2.4",
   "provider": "6.0.1",
   "riverpod": "0.14.0+3",
   "source_span": "1.8.1",
diff --git a/tool/pub_dependencies_old.json b/tool/pub_dependencies_old.json
index ed1770e..2c4b2b4 100644
--- a/tool/pub_dependencies_old.json
+++ b/tool/pub_dependencies_old.json
@@ -60,7 +60,7 @@
   "pedantic": "1.11.1",
   "platform": "3.0.2",
   "plugin_platform_interface": "2.0.2",
-  "process": "4.2.3",
+  "process": "4.2.4",
   "provider": "6.0.1",
   "riverpod": "0.14.0+3",
   "source_span": "1.8.1",
diff --git a/tool/pub_dependencies_stable.json b/tool/pub_dependencies_stable.json
index ed1770e..2c4b2b4 100644
--- a/tool/pub_dependencies_stable.json
+++ b/tool/pub_dependencies_stable.json
@@ -60,7 +60,7 @@
   "pedantic": "1.11.1",
   "platform": "3.0.2",
   "plugin_platform_interface": "2.0.2",
-  "process": "4.2.3",
+  "process": "4.2.4",
   "provider": "6.0.1",
   "riverpod": "0.14.0+3",
   "source_span": "1.8.1",