docker seleniumの各バージョンがどのブラウザーのバージョンに対応するのかを調べる

# はじめに
[selenium/node-chrome](https://hub.docker.com/r/selenium/node-chrome)は次のようなバージョンになっていることが多いんだけれど、それぞれのバージョンでどのChromeが利用されているかがぱっと見わからない。

- 4.4.0-20220812
- 4.3.0-20220726

[リリースノート](https://github.com/SeleniumHQ/docker-selenium/releases)を見ると乗っているのだけれど、一覧で見たい。

# 一覧

ついでなんで Chrome, Edge, Firefox をリストにした

|TAG|Chrome|Edge|Firefox|
|---|------|----|-------|
|3.141.59-20200326|80.0.3987.149||74.0|
|3.141.59-20200409|81.0.4044.92||75.0|
|3.141.59-20200515|81.0.4044.138||76.0.1|
|3.141.59-20200525|83.0.4103.61||76.0.1|
|3.141.59-20200719|84.0.4147.89||78.0.2|
|3.141.59-20200730|84.0.4147.105||79.0|
|3.141.59-20200826|85.0.4183.83||80.0|
|3.141.59-20201010|86.0.4240.75||81.0.1|
|3.141.59-20201117|86.0.4240.198||82.0.3|
|3.141.59-20201119|87.0.4280.66||83.0|
|3.141.59-20210105|87.0.4280.88||84.0.1|
|3.141.59-20210128|88.0.4324.96||85.0|
|3.141.59-20210310|87.0.4280.88||84.0.1|
|3.141.59-20210311|89.0.4389.82||86.0|
|3.141.59-20210422|90.0.4430.85||88.0|
|3.141.59-20210607|91.0.4472.77||89.0|
|3.141.59-20210713|91.0.4472.114||90.0|
|3.141.59-20210729|92.0.4515.107||90.0.2|
|3.141.59-20210804|92.0.4515.107||90.0.2|
|3.141.59-20210830|92.0.4515.159||91.0.2|
|3.141.59-20210913|93.0.4577.63||92.0|
|3.141.59-20210929|94.0.4606.61||92.0.1|
|4.0.0-20211013|94.0.4606.81|95.0.1020.20|93.0|
|4.0.0-20211025|95.0.4638.54|95.0.1020.30|93.0|
|4.0.0-20211102|95.0.4638.69|95.0.1020.40|94.0|
|4.1.0-20211123|96.0.4664.45|95.0.1020.53|94.0.2|
|4.1.0-20211209|96.0.4664.93|96.0.1054.43|95.0|
|4.1.1-20211217|96.0.4664.110|96.0.1054.62|95.0.1|
|4.1.1-20220121|97.0.4692.99|97.0.1072.69|96.0.2|
|4.1.2-20220130|97.0.4692.99|97.0.1072.76|96.0.3|
|4.1.2-20220131|97.0.4692.99|97.0.1072.76|96.0.3|
|4.1.2-20220208|98.0.4758.80|98.0.1108.43|96.0.3|
|4.1.2-20220217|98.0.4758.102|98.0.1108.56|97.0.1|
|4.1.2-20220317|99.0.4844.74|99.0.1150.46|98.0.1|
|4.1.3-20220327|99.0.4844.84|99.0.1150.55|98.0.2|
|4.1.3-20220405|100.0.4896.75|100.0.1185.29|99.0|
|4.1.3-20220427|101.0.4951.41|100.0.1185.50|99.0.1|
|4.1.4-20220427|101.0.4951.41|101.0.1210.53|99.0.1|
|4.2.0-20220527|102.0.5005.61||100.0.2|
|4.2.1-20220531|102.0.5005.61|101.0.1210.53|100.0.2|
|4.2.1-20220608|102.0.5005.61|102.0.1245.33|101.0|
|4.2.2-20220609|102.0.5005.61|102.0.1245.33|101.0|
|4.2.2-20220622|103.0.5060.53|102.0.1245.44|101.0.1|
|4.3.0-20220624|103.0.5060.53|103.0.1264.37|101.0.1|
|4.3.0-20220628|103.0.5060.53||102.0|
|4.3.0-20220706|103.0.5060.114|103.0.1264.44|102.0.1|
|4.3.0-20220726|103.0.5060.134|103.0.1264.71|103.0|
|4.4.0-20220812|104.0.5112.79|104.0.1293.54|103.0.2|
|4.4.0-20220831|105.0.5195.52|104.0.1293.70|104.0.1|
|4.5.0-20220929|106.0.5249.61|105.0.1343.53|105.0.1|
|4.5.0-20221004|106.0.5249.91|106.0.1370.34|105.0.2|
|4.5.0-20221017|106.0.5249.119|106.0.1370.47|105.0.3|

# スクリプト

タグの一覧を取得し、それっぽいタグのコンテナを起動してバージョンを表示するスクリプトを作る。
alpha, beta, rc, prerelase は切りがないので省く。

```sh
echo `date` > v.txt
cat << EOT >> v.txt
| TAG | VERSION |
|-----|---------|
EOT

curl -s https://registry.hub.docker.com/v1/repositories/selenium/node-chrome/tags \
    | jq -r '.[].name | select(test("^[3|4]+\\.\\d+\\.\\d+\\-\\d{8}$")) ' \
    | while read tag
    do 
        docker run --rm selenium/node-chrome:"${tag}" google-chrome --version | awk -v t=$tag '{print "|" t "|" $3 "|"}' >> v.txt
        docker rmi selenium/node-chrome:"${tag}"
    done
```

# 結果

Wed Aug 24 04:11:45 PM JST 2022

| TAG | VERSION |
|-----|---------|
|3.141.59-20200326|80.0.3987.149|
|3.141.59-20200409|81.0.4044.92|
|3.141.59-20200515|81.0.4044.138|
|3.141.59-20200525|83.0.4103.61|
|3.141.59-20200719|84.0.4147.89|
|3.141.59-20200730|84.0.4147.105|
|3.141.59-20200826|85.0.4183.83|
|3.141.59-20201010|86.0.4240.75|
|3.141.59-20201117|86.0.4240.198|
|3.141.59-20201119|87.0.4280.66|
|3.141.59-20210105|87.0.4280.88|
|3.141.59-20210128|88.0.4324.96|
|3.141.59-20210310|87.0.4280.88|
|3.141.59-20210311|89.0.4389.82|
|3.141.59-20210422|90.0.4430.85|
|3.141.59-20210607|91.0.4472.77|
|3.141.59-20210713|91.0.4472.114|
|3.141.59-20210729|92.0.4515.107|
|3.141.59-20210804|92.0.4515.107|
|3.141.59-20210830|92.0.4515.159|
|3.141.59-20210913|93.0.4577.63|
|3.141.59-20210929|94.0.4606.61|
|4.0.0-20211013|94.0.4606.81|
|4.0.0-20211025|95.0.4638.54|
|4.0.0-20211102|95.0.4638.69|
|4.1.0-20211123|96.0.4664.45|
|4.1.0-20211209|96.0.4664.93|
|4.1.1-20211217|96.0.4664.110|
|4.1.1-20220121|97.0.4692.99|
|4.1.2-20220130|97.0.4692.99|
|4.1.2-20220131|97.0.4692.99|
|4.1.2-20220208|98.0.4758.80|
|4.1.2-20220217|98.0.4758.102|
|4.1.2-20220317|99.0.4844.74|
|4.1.3-20220327|99.0.4844.84|
|4.1.3-20220405|100.0.4896.75|
|4.1.3-20220427|101.0.4951.41|
|4.1.4-20220427|101.0.4951.41|
|4.2.0-20220527|102.0.5005.61|
|4.2.1-20220531|102.0.5005.61|
|4.2.1-20220608|102.0.5005.61|
|4.2.2-20220609|102.0.5005.61|
|4.2.2-20220622|103.0.5060.53|
|4.3.0-20220624|103.0.5060.53|
|4.3.0-20220628|103.0.5060.53|
|4.3.0-20220706|103.0.5060.114|
|4.3.0-20220726|103.0.5060.134|
|4.4.0-20220812|104.0.5112.79|

# おわりに
たぶん、どこかにまとまっていると思うんだけれど、見つけられなかったんだ。