ClickHouse/docker
Azat Khuzhin 0b258dda4e Reproducible builds for Rust
From now on cargo will not download anything from the internet during
builds. This step had been moved for docker image builds (via cargo
vendor).

And now cargo inside docker.io/clickhouse/binary-builder will not use
any crates from the internet, so we don't need to add --offline for
cargo commands in cmake (corrosion_import_crate()).

Also the docker build command had been adjusted to allow following
symlinks inside build context, by using tar, this is required for Rust
packages.

Note, that to make proper Cargo.lock that could be vendored I did the
following:
- per-project locks had been removed (since there is no automatic way to
  sync the workspace Cargo.lock with per-project Cargo.lock, since cargo
  update/generate-lockfile will use only per-project Cargo.toml files
  apparently, -Z minimal-versions does not helps either)
- and to generate Cargo.lock with less changes I've pinned version in
  the Cargo.toml strictly, i.e. not 'foo = "0.1"' but 'foo = "=0.1"'
  then the Cargo.lock for workspace had been generated and afterwards
  I've reverted this part.

Plus I have to update the dependencies afterwards, since otherwise there
are conflicts with dependencies for std library. Non trivial.

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-07-22 22:46:22 +02:00
..
bare Fix typo 2023-05-06 23:40:19 +02:00
client Update version to 22.1 not 21.13 2022-01-14 15:10:45 +03:00
docs/builder Remove the comment to rebuild the docker image 2023-04-24 11:21:09 +02:00
keeper Update version_date.tsv and changelogs after v23.6.2.18-stable 2023-07-08 23:14:02 +00:00
packager Reproducible builds for Rust 2023-07-22 22:46:22 +02:00
server Fix a few typos in docker readme. 2023-07-11 12:16:55 -05:00
test Get rid of it 2023-07-22 05:08:27 +02:00
images.json Fix source image for sqllogic 2023-07-03 12:29:12 +02:00
README.md

ClickHouse Dockerfiles

This directory contain Dockerfiles for clickhouse-client and clickhouse-server. They are updated in each release.

Also there is bunch of images for testing and CI. They are listed in images.json file and updated on each commit to master. If you need to add another image, place information about it into images.json.