ClickHouse/docker/packager
Alexey Milovidov 6c408c7867
Merge pull request #55071 from ClickHouse/nikitamikhaylov-patch-1
Use `source` instead of `bash` for pre-build script
2023-09-30 08:58:27 +03:00
..
binary Update build.sh 2023-09-28 11:47:23 +02:00
packager Fix typo in packager when ccache is used 2023-09-28 14:40:13 +00:00
README.md Revert "Add documentation for building in docker" 2023-07-04 14:07:10 +03:00

Allow to build ClickHouse in Docker for different platforms with different compilers and build settings. Correctly configured Docker daemon is single dependency.

Usage:

Build deb package with clang-14 in debug mode:

$ mkdir deb/test_output
$ ./packager --output-dir deb/test_output/ --package-type deb --compiler=clang-14 --debug-build
$ ls -l deb/test_output
-rw-r--r-- 1 root root      3730 clickhouse-client_22.2.2+debug_all.deb
-rw-r--r-- 1 root root  84221888 clickhouse-common-static_22.2.2+debug_amd64.deb
-rw-r--r-- 1 root root 255967314 clickhouse-common-static-dbg_22.2.2+debug_amd64.deb
-rw-r--r-- 1 root root     14940 clickhouse-server_22.2.2+debug_all.deb
-rw-r--r-- 1 root root 340206010 clickhouse-server-base_22.2.2+debug_amd64.deb
-rw-r--r-- 1 root root      7900 clickhouse-server-common_22.2.2+debug_all.deb

Build ClickHouse binary with clang-14 and address sanitizer in relwithdebuginfo mode:

$ mkdir $HOME/some_clickhouse
$ ./packager --output-dir=$HOME/some_clickhouse --package-type binary --compiler=clang-14 --sanitizer=address
$ ls -l $HOME/some_clickhouse
-rwxr-xr-x 1 root root 787061952  clickhouse
lrwxrwxrwx 1 root root        10  clickhouse-benchmark -> clickhouse
lrwxrwxrwx 1 root root        10  clickhouse-clang -> clickhouse
lrwxrwxrwx 1 root root        10  clickhouse-client -> clickhouse
lrwxrwxrwx 1 root root        10  clickhouse-compressor -> clickhouse
lrwxrwxrwx 1 root root        10  clickhouse-copier -> clickhouse
lrwxrwxrwx 1 root root        10  clickhouse-extract-from-config -> clickhouse
lrwxrwxrwx 1 root root        10  clickhouse-format -> clickhouse
lrwxrwxrwx 1 root root        10  clickhouse-lld -> clickhouse
lrwxrwxrwx 1 root root        10  clickhouse-local -> clickhouse
lrwxrwxrwx 1 root root        10  clickhouse-obfuscator -> clickhouse
lrwxrwxrwx 1 root root        10  clickhouse-odbc-bridge -> clickhouse
lrwxrwxrwx 1 root root        10  clickhouse-server -> clickhouse