-
Notifications
You must be signed in to change notification settings - Fork 16
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Rework the dockerfile to build dpkg in a dedicated stage. This simplifies the diff and hopefully reduce maintenance cost for future versions.
- Loading branch information
Showing
4 changed files
with
41 additions
and
153 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,79 +1,26 @@ | ||
--- git/docker/amd64/Dockerfile 2020-12-29 21:18:53.687097820 +0100 | ||
+++ Dockerfile 2020-12-29 21:50:52.627961467 +0100 | ||
@@ -41,9 +41,9 @@ | ||
WORKDIR /app | ||
|
||
# Copies over *only* your manifests and build files | ||
-COPY ./Cargo.* ./ | ||
-COPY ./rust-toolchain ./rust-toolchain | ||
-COPY ./build.rs ./build.rs | ||
+COPY git/Cargo.* ./ | ||
+COPY git/rust-toolchain ./rust-toolchain | ||
+COPY git/build.rs ./build.rs | ||
|
||
|
||
# Builds your dependencies and removes the | ||
@@ -54,7 +54,7 @@ | ||
|
||
# Copies the complete project | ||
# To avoid copying unneeded files, use .dockerignore | ||
-COPY . . | ||
+COPY git . | ||
|
||
# Make sure that we actually build the project | ||
RUN touch src/main.rs | ||
@@ -68,38 +68,22 @@ | ||
# because we already have a binary built | ||
FROM debian:buster-slim | ||
|
||
-ENV ROCKET_ENV "staging" | ||
-ENV ROCKET_PORT=80 | ||
-ENV ROCKET_WORKERS=10 | ||
- | ||
-# Install needed libraries | ||
-RUN apt-get update && apt-get install -y \ | ||
- --no-install-recommends \ | ||
- openssl \ | ||
- ca-certificates \ | ||
- curl \ | ||
- sqlite3 \ | ||
- libmariadb-dev-compat \ | ||
- libpq5 \ | ||
- && rm -rf /var/lib/apt/lists/* | ||
- | ||
-RUN mkdir /data | ||
-VOLUME /data | ||
-EXPOSE 80 | ||
-EXPOSE 3012 | ||
- | ||
-# Copies the files from the context (Rocket.toml file and web-vault) | ||
-# and the binary from the "build" stage to the current stage | ||
-COPY Rocket.toml . | ||
-COPY --from=vault /web-vault ./web-vault | ||
-COPY --from=build /app/target/release/bitwarden_rs . | ||
- | ||
-COPY docker/healthcheck.sh /healthcheck.sh | ||
-COPY docker/start.sh /start.sh | ||
--- git/docker/amd64/Dockerfile 2021-02-12 11:45:13.762372371 +0100 | ||
+++ Dockerfile 2021-02-12 11:59:56.727518522 +0100 | ||
@@ -111,3 +111,23 @@ | ||
WORKDIR / | ||
ENTRYPOINT ["/usr/bin/dumb-init", "--"] | ||
CMD ["/start.sh"] | ||
+ | ||
+####################### dpkg target ########################## | ||
+FROM build as dpkg | ||
+RUN mkdir -p /bitwarden_package/DEBIAN | ||
+RUN mkdir -p /bitwarden_package/usr/local/bin | ||
+RUN mkdir -p /bitwarden_package/usr/lib/systemd/system | ||
+RUN mkdir -p /bitwarden_package/etc/bitwarden_rs | ||
+RUN mkdir -p /bitwarden_package/usr/share/bitwarden_rs | ||
|
||
-HEALTHCHECK --interval=60s --timeout=10s CMD ["/healthcheck.sh"] | ||
+ | ||
+WORKDIR /bitwarden_package | ||
|
||
-# Configures the startup! | ||
-WORKDIR / | ||
-CMD ["/start.sh"] | ||
+COPY debian/control /bitwarden_package/DEBIAN/control | ||
+COPY debian/postinst /bitwarden_package/DEBIAN/postinst | ||
+COPY debian/conffiles /bitwarden_package/DEBIAN/conffiles | ||
+COPY git/Rocket.toml /bitwarden_package/etc/bitwarden_rs | ||
+COPY Rocket.toml /bitwarden_package/etc/bitwarden_rs | ||
+COPY debian/config.env /bitwarden_package/etc/bitwarden_rs | ||
+COPY debian/bitwarden_rs.service /bitwarden_package/usr/lib/systemd/system | ||
+COPY --from=vault /web-vault /bitwarden_package/usr/share/bitwarden_rs/web-vault | ||
+COPY --from=build app/target/release/bitwarden_rs /bitwarden_package/usr/local/bin | ||
|
||
+# Create the package | ||
+ | ||
+RUN dpkg-deb --build . bitwarden-rs.deb |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
--- git/docker/armv7/Dockerfile 2021-02-12 11:45:13.763372371 +0100 | ||
+++ Dockerfile 2021-02-12 12:25:50.078877369 +0100 | ||
@@ -157,3 +157,23 @@ | ||
WORKDIR / | ||
ENTRYPOINT ["/usr/bin/dumb-init", "--"] | ||
CMD ["/start.sh"] | ||
+ | ||
+####################### dpkg target ########################## | ||
+FROM build as dpkg | ||
+RUN mkdir -p /bitwarden_package/DEBIAN | ||
+RUN mkdir -p /bitwarden_package/usr/local/bin | ||
+RUN mkdir -p /bitwarden_package/usr/lib/systemd/system | ||
+RUN mkdir -p /bitwarden_package/etc/bitwarden_rs | ||
+RUN mkdir -p /bitwarden_package/usr/share/bitwarden_rs | ||
+ | ||
+WORKDIR /bitwarden_package | ||
+COPY debian/control /bitwarden_package/DEBIAN/control | ||
+COPY debian/postinst /bitwarden_package/DEBIAN/postinst | ||
+COPY debian/conffiles /bitwarden_package/DEBIAN/conffiles | ||
+COPY Rocket.toml /bitwarden_package/etc/bitwarden_rs | ||
+COPY debian/config.env /bitwarden_package/etc/bitwarden_rs | ||
+COPY debian/bitwarden_rs.service /bitwarden_package/usr/lib/systemd/system | ||
+COPY --from=vault /web-vault /bitwarden_package/usr/share/bitwarden_rs/web-vault | ||
+COPY --from=build app/target/armv7-unknown-linux-gnueabihf/release/bitwarden_rs /bitwarden_package/usr/local/bin | ||
+ | ||
+RUN dpkg-deb --build . bitwarden-rs.deb |