Adding perl and openssl as dependencies for h2o.
If perl is not present, the h2o server does not start, see error below.
While openssl is not needed by h2o when only running an http server, openssl is needed for running an h2o https server. It would be sensible to assume that one would want to run an https server, especially given the fact that this is specifically a web server to support h2 (and not h2c), and h2 requires TLS, so it would be sensible to assume the user will configure https and hence openssl should be required by the package.
Error below after configuring https when openssl is not installed.
initial install where h2o package pulls in dependencies not present yet on the host:
localhost:~# apk add h2o (1/4) Installing libgcc (9.2.0-r4) (2/4) Installing libstdc++ (9.2.0-r4) (3/4) Installing libuv (1.34.0-r0) (4/4) Installing h2o (2.2.6-r1) Executing h2o-2.2.6-r1.pre-install Executing busybox-1.31.1-r9.trigger OK: 89 MiB in 40 packages localhost:~#
localhost:~# /usr/bin/h2o -c /etc/h2o.conf -m master /usr/share/h2o/start_server: exec: line 2: perl: not found
localhost:~# apk add perl (1/2) Installing libbz2 (1.0.8-r1) (2/2) Installing perl (5.30.1-r0) Executing busybox-1.31.1-r9.trigger OK: 126 MiB in 42 packages
starting success after adding perl:
localhost:~# /usr/bin/h2o -c /etc/h2o.conf -m master start_server (pid:2614) starting now...
The initial config has an http server setup only.
Error after configuring https:
Can't exec "openssl": No such file or directory at /usr/share/h2o/fetch-ocsp-response line 135. failed to invoke openssl:No such file or directory at /usr/share/h2o/fetch-ocsp-response line 135.