First, Alpine edge
is always under development so that is why the version ID contains the date, while for the stable release it will contain standard version ID
with pretty Name.
Warning: "edge" is under constant development so be careful using it in production. It is possible that bugs in "edge" could cause data loss or could break your system.
alpine edge
So you should relay on pretty name instead of version ID.
docker tag refer to version ID for example the tag is alpine:3.7.3
then the ID will be 3.7.3
I did not find any official documentation but here is something can help you
VERSION_ID=3.{Major}.{minor}
PRETTY_NAME="Alpine Linux 3.{Major}"
So pretty name will always refer the major version, no mater whats the minor version is
alpine:3.7.3 ---> PRETTY_NAME="Alpine Linux v3.7"
alpine:3.8 ---> PRETTY_NAME="Alpine Linux v3.8"
alpine:3.9 ---> PRETTY_NAME="Alpine Linux v3.9"
while this is different for edge releases.
VERSION_ID=3.{CURRENT_MAJOR}_alpha{SNAPSHOT_DATE}
PRETTY_NAME="Alpine Linux {edge}"
Stable releases are just what they sound like: initially a point-in-time snapshot of the package archives, but then maintained with bug-fixes only in order to keep a stable environment.
Edge is more of a rolling-release, with the latest and greatest packages available in the online repositories.
What_is_the_difference_between_edge_and_stable_releases