When build kafka-delta-ingest with a modified Dockerfile to build and run on alpine, cargo build always failed because it cannot build openssl.
After a bit of research, apparently the dependency rdkafka with feature ssl-vendored is the problem, and changing the feature to ssl fixed the problem. The difference between ssl and ssl-vendored is that ssl-vendored statically linked the OpenSSL library bundled in openssl-sys crate, while ssl dynamically linked the system OpenSSL library, according to their documentation.
And after some digging in the git history, this is where the rdkafka dependency require feature change from ssl to ssl-vendored.
So my question is: Is there any reason to use ssl-vendored instead of ssl?
When build
kafka-delta-ingest
with a modified Dockerfile to build and run onalpine
,cargo build
always failed because it cannot buildopenssl
.After a bit of research, apparently the dependency
rdkafka
with featuressl-vendored
is the problem, and changing the feature tossl
fixed the problem. The difference betweenssl
andssl-vendored
is thatssl-vendored
statically linked the OpenSSL library bundled inopenssl-sys
crate, whilessl
dynamically linked the system OpenSSL library, according to their documentation.And after some digging in the git history, this is where the
rdkafka
dependency require feature change fromssl
tossl-vendored
.So my question is: Is there any reason to use
ssl-vendored
instead ofssl
?