From 9b9d222546f7189310dfd0663b1e3a7c901a2563 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=90=E6=B6=9B?= Date: Sun, 7 Apr 2024 21:40:35 +0800 Subject: [PATCH] =?UTF-8?q?build(server):=E5=A2=9E=E5=8A=A0=E4=BD=BF?= =?UTF-8?q?=E7=94=A8Docker=E9=83=A8=E7=BD=B2=E5=8A=9F=E8=83=BD=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- license_server/Dockerfile | 47 +++++++++++++++++++++++++++++++++++++ license_server/crates.conf | 14 +++++++++++ license_server/sources.list | 23 ++++++++++++++++++ 3 files changed, 84 insertions(+) create mode 100644 license_server/Dockerfile create mode 100644 license_server/crates.conf create mode 100644 license_server/sources.list diff --git a/license_server/Dockerfile b/license_server/Dockerfile new file mode 100644 index 0000000..84b2935 --- /dev/null +++ b/license_server/Dockerfile @@ -0,0 +1,47 @@ +FROM rust:1.69-slim-bullseye AS builder + +ADD sources.list /etc/apt/ +RUN apt-get update && apt-get install -y \ + rpcsvc-proto \ + libc6-dev \ + libclang-dev \ + pkg-config \ + libssl-dev +ADD crates.conf /root/.cargo/config +RUN USER=root cargo new --bin license_service +WORKDIR /license_service +COPY ./Cargo.toml ./Cargo.toml + +RUN cargo build --release && rm src/*.rs target/release/deps/license_server* + +ADD ./src ./src + +RUN cargo build --release + +FROM debian:bullseye-slim AS deployer + +ADD sources.list /etc/apt/ + +RUN apt-get update && \ + apt-get install -y ca-certificates tzdata && \ + rm -rf /var/lib/apt/lists/* + +EXPOSE 8080 + +ENV TZ=Asia/Shanghai \ + APP_USER=license_usr + +RUN groupadd service && \ + useradd -g service $APP_USER && \ + mkdir -p /license_service + +COPY --from=builder /license_service/target/release/license_server /license_service/license_server + +RUN chown -R $APP_USER:service license_server + +USER $APP_USER +WORKDIR /license_service + +VOLUME ["/license_service/license.key", "/license_service/license.pem", "/license_service/netfilter.zip", "/license_service/products.json"] + +CMD ["./license_server"] diff --git a/license_server/crates.conf b/license_server/crates.conf new file mode 100644 index 0000000..39253dd --- /dev/null +++ b/license_server/crates.conf @@ -0,0 +1,14 @@ +[source.crates-io] +# To use sparse index, change 'rsproxy' to 'rsproxy-sparse' +replace-with = 'rsproxy-sparse' + +[source.rsproxy] +registry = "https://rsproxy.cn/crates.io-index" +[source.rsproxy-sparse] +registry = "sparse+https://rsproxy.cn/index/" + +[registries.rsproxy] +index = "https://rsproxy.cn/crates.io-index" + +[net] +git-fetch-with-cli = true \ No newline at end of file diff --git a/license_server/sources.list b/license_server/sources.list new file mode 100644 index 0000000..ef13981 --- /dev/null +++ b/license_server/sources.list @@ -0,0 +1,23 @@ +deb http://mirrors.163.com/debian/ bullseye main non-free contrib + +deb http://mirrors.163.com/debian/ bullseye-updates main non-free contrib + +deb http://mirrors.163.com/debian/ bullseye-backports main non-free contrib + +deb-src http://mirrors.163.com/debian/ bullseye main non-free contrib + +deb-src http://mirrors.163.com/debian/ bullseye-updates main non-free contrib + +deb-src http://mirrors.163.com/debian/ bullseye-backports main non-free contrib + +#deb http://mirrors.163.com/debian-security/ bullseye/updates main non-free contrib + +#deb http://mirrors.ustc.edu.cn/debian-security/ bullseye/updates main non-free contrib + +#deb-src http://mirrors.163.com/debian-security/ bullseye/updates main non-free contrib + +#deb-src http://mirrors.ustc.edu.cn/debian-security/ bullseye/updates main non-free contrib + +deb http://mirrors.ustc.edu.cn/debian-security/ stable-security main non-free contrib + +deb-src http://mirrors.ustc.edu.cn/debian-security/ stable-security main non-free contri \ No newline at end of file