From 16b3af8892b56d206c95558cf341bb313342f13d Mon Sep 17 00:00:00 2001 From: "flow.gunso" Date: Mon, 18 Mar 2019 19:02:59 +0100 Subject: [PATCH 1/2] Add a failsafe script to import Seafile's APT key --- utils/build/import-seafile-apt-key.sh | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 utils/build/import-seafile-apt-key.sh diff --git a/utils/build/import-seafile-apt-key.sh b/utils/build/import-seafile-apt-key.sh new file mode 100644 index 0000000..4818945 --- /dev/null +++ b/utils/build/import-seafile-apt-key.sh @@ -0,0 +1,27 @@ +#!/bin/bash + +# Docker Seafile client, help you mount a Seafile library as a volume. +# Copyright (C) 2019, flow.gunso@gmail.com +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +not_imported=true +while $not_imported; do + apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 8756C4F765C9AC3CB6B85D62379CE192D401AB61 + if [ $? -eq 0 ]; then + not_imported=false + else + sleep 5 + fi +done \ No newline at end of file From 4e1e559b08e2aeb1d78aad1a50f2e76561cdbbf9 Mon Sep 17 00:00:00 2001 From: "flow.gunso" Date: Mon, 18 Mar 2019 19:04:12 +0100 Subject: [PATCH 2/2] Add the file from @16b3af8892b56d206c95558cf341bb313342f13d, merge the apt key import with the packages installation --- Dockerfile | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Dockerfile b/Dockerfile index dc7a99f..830b31e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -30,12 +30,12 @@ COPY assets/supervisord.conf /.supervisord/ COPY assets/infinite-seaf-cli-start.sh / COPY entrypoint.sh / -# Install both seafile-cli and supervisord. -RUN apt-key adv \ - --keyserver hkp://keyserver.ubuntu.com:80 \ - --recv-keys 8756C4F765C9AC3CB6B85D62379CE192D401AB61 -RUN apt-get update ;\ +# Safely import Seafile APT key, then install both seafile-cli and supervisord. +COPY utils/build/import-seafile-apt-key.sh / +RUN /bin/bash /import-seafile-apt-key.sh ;\ + apt-get update ;\ apt-get install -o Dpkg::Options::="--force-confold" -y seafile-cli supervisor +RUN rm -f /import-seafile-apt-key.sh # Configure the user. ENV UNAME=seafuser