adferrand/docker-backuppc

single link creation bzip2

Closed this issue · 8 comments

Hi. For fix warning backuppc | ln: /bin/bzip2: File exists
Please move code for single run.

[mike@dh updates]# diff -c ../docker-backuppc-4.2.1-1/files/entrypoint.sh entrypoint.sh
*** ../docker-backuppc-4.2.1-1/files/entrypoint.sh      2018-09-12 21:22:29.000000000 +0800
--- entrypoint.sh       2018-09-25 13:11:36.308648187 +0800
***************
*** 9,14 ****
--- 9,16 ----
  if [ -f /firstrun ]; then
        echo 'First run of the container. BackupPC will be installed.'
        echo 'If exist, configuration and data will be reused and upgraded as needed.'
+       # Executable bzip2 seems to have been moved into /usr/bin in latest Alpine version. Fix that.
+       ln -s /usr/bin/bzip2 /bin/bzip2

        # Configure timezone if needed
        if [ -n "$TZ" ]; then
***************
*** 92,97 ****
--- 94,100 ----

        # Clean
        rm -rf /root/BackupPC-$BACKUPPC_VERSION.tar.gz /root/BackupPC-$BACKUPPC_VERSION /firstrun
+
  fi

  export BACKUPPC_UUID
***************
*** 99,107 ****
  export BACKUPPC_USERNAME
  export BACKUPPC_GROUPNAME

- # Executable bzip2 seems to have been moved into /usr/bin in latest Alpine version. Fix that.
- ln -s /usr/bin/bzip2 /bin/bzip2
-
  # Exec given CMD in Dockerfile
  cd /home/backuppc
  exec "$@"
--- 102,107 ----

I am closing the issue since your modification has been integrated.

The issue persists. Found in the latest dockerhub image.

I find it strange that I could build a running container from the image one time, but when I tried removing everything, image & container I get this error everytime as if Docker somehow caches the alpine linux image.

Either way, when I try to get around this issue by building from github and commenting out the ln -s instruction I get stuck at the following log causing a shutdown everytime:

Ok, we're about to:



  - install the binaries, lib and docs in /usr/local/BackupPC


  - create the data directory /data/backuppc


  - optionally install the cgi-bin interface


  - create/update the config.pl file /etc/backuppc/config.pl



--> Do you want to continue? [y]

Sorry, I though the latest integration was fixing the issue. I am reopening.

I hit this with the 4.2.1-1 image form docker hub, but it's gone after pulling 4.3.1 so it seems to be solved in the latest docker hub image now.
@asaphaaning is it solved for you as well with the latest image?

@jakommo Yes sir! :)

Sorry to say but seems broken in the adferrand/backuppc:latest pull again.

adferrand/backuppc:latest@sha256:2d4a0364c4a9d22cc9f1583558856e5cad57663dcb998fa01eddbc8c3f576241

BACKUPPC_VERSION 4.3.1
BACKUPPC_XS_VERSION 0.59
RSYNC_BPC_VERSION 3.1.2.1
PAR2_VERSION v0.8.0

And I get the same error:

 First run of the container. BackupPC will be installed.
 If exist, configuration and data will be reused and upgraded as needed.
 ln: /bin/bzip2: File exists

I have tried deleting and recreating but same issue.

EDIT: Downgraded to adferrand/backuppc:4.3.1 and all works again. So definitely need to do some bisecting there.

I just released the version 4.4.0-1 that conditionnally creates the symlink on /bin/bzip2. With this we should cover all situations and prevent the failure you observe here.