Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F3351609
D9117.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
2 KB
Referenced Files
None
Subscribers
None
D9117.diff
View Options
diff --git a/services/feature-flags/Dockerfile b/services/feature-flags/Dockerfile
--- a/services/feature-flags/Dockerfile
+++ b/services/feature-flags/Dockerfile
@@ -1,44 +1,35 @@
-FROM commapp/services-base:1.3.2 as builder
+FROM rust:1.70-bullseye as builder
-ENV PATH=/root/.cargo/bin:$PATH
-
-# Install Curl
-RUN apt-get update \
- && DEBIAN_FRONTEND=noninteractive apt-get install -y curl \
+RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \
+ build-essential cmake git libgtest-dev libssl-dev zlib1g-dev \
&& rm -rf /var/lib/apt/lists/*
-# Install Rust
-RUN curl https://sh.rustup.rs -sSf | sh -s -- -y
-
-RUN mkdir -p /home/comm/app/feature-flags
-WORKDIR /home/comm/app/feature-flags
-RUN cargo init --bin
+WORKDIR /home/root/app/feature-flags
-# Cache build dependencies in a new layer
-COPY services/blob/Cargo.toml services/blob/Cargo.lock ./
-COPY services/comm-services-lib ../comm-services-lib
-RUN cargo build --release
+ENV CARGO_REGISTRIES_CRATES_IO_PROTOCOL=sparse
# Copy actual application sources
-COPY services/feature-flags .
+COPY services/comm-services-lib ../comm-services-lib
+COPY services/feature-flags ./
-# Remove the previously-built binary so that only the application itself is
-# rebuilt
-RUN rm -f ./target/release/deps/feature-flags*
-RUN cargo build --release
+RUN cargo install --locked --path .
# Runner stage
-FROM commapp/services-base:1.3.2 as runner
+FROM debian:bullseye-slim as runner
-# Create a new user comm and use it to run subsequent commands
-RUN useradd -m comm
-USER comm
+# Update dependencies, install ca-certificates which are required for TLS
+RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \
+ ca-certificates \
+ && rm -rf /var/lib/apt/lists/*
# Only copy built binary from builder stage
+COPY --from=builder /usr/local/cargo/bin/feature-flags /usr/local/bin/feature-flags
WORKDIR /home/comm/app/feature-flags
-COPY --from=builder /home/comm/app/feature-flags/target/release/feature-flags .
-ARG COMM_SERVICES_SANDBOX
-ENV COMM_SERVICES_SANDBOX=${COMM_SERVICES_SANDBOX}
+# Create a new user comm and use it to run subsequent commands
+RUN useradd -m comm
+USER comm
+
+ENV RUST_LOG=info
-CMD ./feature-flags
+CMD ["feature-flags"]
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sun, Nov 24, 2:46 AM (19 h, 2 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2573590
Default Alt Text
D9117.diff (2 KB)
Attached To
Mode
D9117: [feature-flags] Update Dockerfile
Attached
Detach File
Event Timeline
Log In to Comment