Skip to content

Commit 50139ed

Browse files
authored
*: update docker script and Dockerfile (tikv#5764)
Signed-off-by: Neil Shen <[email protected]>
1 parent 109624c commit 50139ed

File tree

4 files changed

+59
-8
lines changed

4 files changed

+59
-8
lines changed

.dockerignore

+38-2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,39 @@
1+
2+
# OSX leaves these everywhere on SMB shares
3+
._*
4+
5+
# OSX trash
6+
.DS_Store
7+
8+
# Eclipse files
9+
.classpath
10+
.project
11+
.settings/**
12+
13+
# Vim swap files
14+
*.swp
15+
16+
# Files generated by JetBrains IDEs, e.g. IntelliJ IDEA
17+
.idea/
18+
*.iml
19+
out/
20+
21+
# Vscode files
22+
.vscode/**
23+
124
target
2-
# Including .git lets the build inside Docker get the git commit
3-
# .git
25+
tmp
26+
/bin
27+
28+
# fuzzing hack, see fuzz/cli.rs
29+
fuzz-incremental/
30+
31+
# cargo configuration. We presently use this to create custom cargo profiles
32+
# that should not be checked in at this location.
33+
.cargo/
34+
35+
# Files generated by tikv-server
36+
/LOCK
37+
/db/
38+
/last_tikv.toml
39+
/raft/

Dockerfile

+14-3
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ WORKDIR /tikv
44

55
# Install Rust
66
COPY rust-toolchain ./
7+
RUN rustup self update
8+
RUN rustup set profile minimal
79
RUN rustup default nightly-2019-09-05
810

911
# Use Makefile to build
@@ -22,21 +24,22 @@ COPY cmd/Cargo.toml ./cmd/
2224
COPY ./components/backup/Cargo.toml ./components/backup/Cargo.toml
2325
COPY ./components/codec/Cargo.toml ./components/codec/Cargo.toml
2426
COPY ./components/engine/Cargo.toml ./components/engine/Cargo.toml
27+
COPY ./components/engine_rocks/Cargo.toml ./components/engine_rocks/Cargo.toml
28+
COPY ./components/engine_traits/Cargo.toml ./components/engine_traits/Cargo.toml
2529
COPY ./components/external_storage/Cargo.toml ./components/external_storage/Cargo.toml
30+
COPY ./components/keys/Cargo.toml ./components/keys/Cargo.toml
2631
COPY ./components/log_wrappers/Cargo.toml ./components/log_wrappers/Cargo.toml
2732
COPY ./components/match_template/Cargo.toml ./components/match_template/Cargo.toml
2833
COPY ./components/panic_hook/Cargo.toml ./components/panic_hook/Cargo.toml
2934
COPY ./components/pd_client/Cargo.toml ./components/pd_client/Cargo.toml
35+
COPY ./components/sst_importer/Cargo.toml ./components/sst_importer/Cargo.toml
3036
COPY ./components/tidb_query/Cargo.toml ./components/tidb_query/Cargo.toml
3137
COPY ./components/tidb_query_codegen/Cargo.toml ./components/tidb_query_codegen/Cargo.toml
3238
COPY ./components/tidb_query_datatype/Cargo.toml ./components/tidb_query_datatype/Cargo.toml
3339
COPY ./components/tikv_alloc/Cargo.toml ./components/tikv_alloc/Cargo.toml
3440
COPY ./components/tikv_util/Cargo.toml ./components/tikv_util/Cargo.toml
3541
COPY ./components/tipb_helper/Cargo.toml ./components/tipb_helper/Cargo.toml
3642

37-
# Remove profiler from tidb_query
38-
RUN sed -i '/profiler/d' ./components/tidb_query/Cargo.toml
39-
4043
# Create dummy files, build the dependencies
4144
# then remove TiKV fingerprint for following rebuild
4245
RUN mkdir -p ./cmd/src/bin && \
@@ -48,11 +51,15 @@ RUN mkdir -p ./cmd/src/bin && \
4851
mkdir ./components/backup/src && echo '' > ./components/backup/src/lib.rs && \
4952
mkdir ./components/codec/src && echo '' > ./components/codec/src/lib.rs && \
5053
mkdir ./components/engine/src && echo '' > ./components/engine/src/lib.rs && \
54+
mkdir ./components/engine_rocks/src && echo '' > ./components/engine_rocks/src/lib.rs && \
55+
mkdir ./components/engine_traits/src && echo '' > ./components/engine_traits/src/lib.rs && \
5156
mkdir ./components/external_storage/src && echo '' > ./components/external_storage/src/lib.rs && \
57+
mkdir ./components/keys/src && echo '' > ./components/keys/src/lib.rs && \
5258
mkdir ./components/log_wrappers/src && echo '' > ./components/log_wrappers/src/lib.rs && \
5359
mkdir ./components/match_template/src && echo '' > ./components/match_template/src/lib.rs && \
5460
mkdir ./components/panic_hook/src && echo '' > ./components/panic_hook/src/lib.rs && \
5561
mkdir ./components/pd_client/src && echo '' > ./components/pd_client/src/lib.rs && \
62+
mkdir ./components/sst_importer/src && echo '' > ./components/sst_importer/src/lib.rs && \
5663
mkdir ./components/tidb_query/src && echo '' > ./components/tidb_query/src/lib.rs && \
5764
mkdir ./components/tidb_query_codegen/src && echo '' > ./components/tidb_query_codegen/src/lib.rs && \
5865
mkdir ./components/tidb_query_datatype/src && echo '' > ./components/tidb_query_datatype/src/lib.rs && \
@@ -71,11 +78,15 @@ RUN make build_dist_release && \
7178
rm -rf ./target/release/.fingerprint/backup-* && \
7279
rm -rf ./target/release/.fingerprint/codec-* && \
7380
rm -rf ./target/release/.fingerprint/engine-* && \
81+
rm -rf ./target/release/.fingerprint/engine_rocks-* && \
82+
rm -rf ./target/release/.fingerprint/engine_traits-* && \
7483
rm -rf ./target/release/.fingerprint/external_storage-* && \
84+
rm -rf ./target/release/.fingerprint/keys-* && \
7585
rm -rf ./target/release/.fingerprint/log_wrappers-* && \
7686
rm -rf ./target/release/.fingerprint/match_template-* && \
7787
rm -rf ./target/release/.fingerprint/panic_hook-* && \
7888
rm -rf ./target/release/.fingerprint/pd_client-* && \
89+
rm -rf ./target/release/.fingerprint/sst_importer-* && \
7990
rm -rf ./target/release/.fingerprint/tidb_query-* && \
8091
rm -rf ./target/release/.fingerprint/tidb_query_codegen-* && \
8192
rm -rf ./target/release/.fingerprint/tidb_query_datatype-* && \

Makefile

+3
Original file line numberDiff line numberDiff line change
@@ -240,6 +240,9 @@ ctl:
240240
expression: format clippy
241241
RUST_BACKTRACE=1 cargo test --features "${ENABLE_FEATURES}" --no-default-features --package tidb_query "expr" -- --nocapture
242242

243+
# A special target for building TiKV docker image.
244+
docker:
245+
scripts/gen-dockerfile.sh && docker build .
243246

244247
## The driver for script/run-cargo.sh
245248
## ----------------------------------

scripts/gen-dockerfile.sh

+4-3
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ WORKDIR /tikv
1313
1414
# Install Rust
1515
COPY rust-toolchain ./
16+
RUN rustup self update
17+
RUN rustup set profile minimal
1618
RUN rustup default $(cat "rust-toolchain")
1719
1820
# Use Makefile to build
@@ -42,9 +44,6 @@ done
4244

4345
cat <<EOT >> ${output}
4446
45-
# Remove profiler from tidb_query
46-
RUN sed -i '/profiler/d' ./components/tidb_query/Cargo.toml
47-
4847
# Create dummy files, build the dependencies
4948
# then remove TiKV fingerprint for following rebuild
5049
RUN mkdir -p ./cmd/src/bin && \\
@@ -99,3 +98,5 @@ EXPOSE 20160 20180
9998
10099
ENTRYPOINT ["/tikv-server"]
101100
EOT
101+
102+
cat .gitignore > .dockerignore

0 commit comments

Comments
 (0)