Updating Seafile Docker 6.3.3 to 7 Failing

Hi, I have been trying to update my Seafile Server versions 6.3.3 running in Docker to version 7 using the instructions provided in the published documents(Sorry I cant include a link but replace the start of the url with download.seafile):

…/published/support/docker/6.3%20upgrade%20to%207.0.md

However, I cannot get it to work. I follow the guide and when I go run the new container using docker compose up, I always get an exited code 1 for seafile. The memcache and mysql containers seem to run, bit the seafile container always exits after a few seconds. Below is the terminal output:

> ubuntu@cloud:/opt/seafile-data$ sudo docker-compose up
> Creating seafile-mysql     ... done
> Creating seafile-memcached ... done
> Creating seafile           ... done
> Attaching to seafile-mysql, seafile-memcached, seafile
> seafile-mysql | 2019-08-07  6:28:17 139675267692544 [Note] mysqld (mysqld 10.1.41-MariaDB-1~bionic) starting as process 1 ...
> seafile-mysql | 2019-08-07  6:28:17 139675267692544 [Note] InnoDB: Using mutexes to ref countbuffer pool pages
> seafile-mysql | 2019-08-07  6:28:17 139675267692544 [Note] InnoDB: The InnoDB memory heap is disabled
> seafile-mysql | 2019-08-07  6:28:17 139675267692544 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
> seafile-mysql | 2019-08-07  6:28:17 139675267692544 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
> seafile-mysql | 2019-08-07  6:28:17 139675267692544 [Note] InnoDB: Compressed tables use zlib1.2.11
> seafile-mysql | 2019-08-07  6:28:17 139675267692544 [Note] InnoDB: Using Linux native AIO
> seafile-mysql | 2019-08-07  6:28:17 139675267692544 [Note] InnoDB: Using SSE crc32 instructions
> seafile-mysql | 2019-08-07  6:28:17 139675267692544 [Note] InnoDB: Initializing buffer pool,size = 256.0M
> seafile-mysql | 2019-08-07  6:28:17 139675267692544 [Note] InnoDB: Completed initialization of buffer pool
> seafile-mysql | 2019-08-07  6:28:18 139675267692544 [Note] InnoDB: Highest supported file format is Barracuda.
> seafile-mysql | 2019-08-07  6:28:19 139675267692544 [Note] InnoDB: 128 rollback segment(s) are active.
> seafile-mysql | 2019-08-07  6:28:19 139675267692544 [Note] InnoDB: Waiting for purge to start
> seafile-mysql | 2019-08-07  6:28:19 139675267692544 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.44-86.0 started; log sequence number 76904158
> seafile-mysql | 2019-08-07  6:28:20 139674345498368 [Note] InnoDB: Dumping buffer pool(s) not yet started
> seafile-mysql | 2019-08-07  6:28:20 139675267692544 [Note] Plugin 'FEEDBACK' is disabled.
> seafile-mysql | 2019-08-07  6:28:20 139675267692544 [Note] Server socket created on IP: '::'.
> seafile-mysql | 2019-08-07  6:28:20 139675267692544 [Warning] 'proxies_priv' entry '@% root@f12512614fa9' ignored in --skip-name-resolve mode.
> seafile-mysql | 2019-08-07 06:28:20 7f08aeaeb700 InnoDB: Error: Column last_update in table "mysql"."innodb_table_stats" is INT UNSIGNED NOT NULL but should be BINARY(4) NOT NULL (type mismatch).
> seafile-mysql | 2019-08-07 06:28:20 7f08aeaeb700 InnoDB: Error: Fetch of persistent statistics requested for table "mysql"."gtid_slave_pos" but the required system tables mysql.innodb_table_stats and mysql.innodb_index_stats are not present or have unexpected structure. Using transient stats instead.
> seafile-mysql | 2019-08-07  6:28:20 139675267692544 [Note] mysqld: ready for connections.
> seafile-mysql | Version: '10.1.41-MariaDB-1~bionic'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  mariadb.org binary distribution
> seafile      | *** Running /etc/my_init.d/01_create_data_links.sh...
> seafile      | invalid time zone
> seafile      | *** /etc/my_init.d/01_create_data_links.sh failed with status 1
> seafile      |
> seafile      | *** Killing all processes...
> seafile exited with code 1

Any and all help appreciated!!

I get a different error when I try to upgrade from 6.3.4:

-------------------------------------------------------------

This script would upgrade your seafile server from 6.3 to 7.0
Press [ENTER] to contiune

Updating seafile/seahub database …

[INFO] You are using MySQL
[INFO] updating ccnet database…
[INFO] updating seafile database…
[INFO] updating seahub database…
[WARNING] Failed to execute sql: (1146, “Table ‘seahub-db.TotalStorageStat’ doesn’t exist”)
[WARNING] Failed to execute sql: (1146, “Table ‘seahub-db.TotalStorageStat’ doesn’t exist”)
[WARNING] Failed to execute sql: (1146, “Table ‘seahub-db.TotalStorageStat’ doesn’t exist”)
[WARNING] Failed to execute sql: (1146, “Table ‘seahub-db.TotalStorageStat’ doesn’t exist”)
[WARNING] Failed to execute sql: (1146, “Table ‘seahub-db.FileOpsStat’ doesn’t exist”)
[WARNING] Failed to execute sql: (1146, “Table ‘seahub-db.FileOpsStat’ doesn’t exist”)
[WARNING] Failed to execute sql: (1146, “Table ‘seahub-db.UserActivityStat’ doesn’t exist”)
[WARNING] Failed to execute sql: (1146, “Table ‘seahub-db.UserActivityStat’ doesn’t exist”)
[WARNING] Failed to execute sql: (1146, “Table ‘seahub-db.UserActivityStat’ doesn’t exist”)
[WARNING] Failed to execute sql: (1146, “Table ‘seahub-db.UserActivityStat’ doesn’t exist”)
[WARNING] Failed to execute sql: (1146, “Table ‘seahub-db.UserActivityStat’ doesn’t exist”)
[WARNING] Failed to execute sql: (1051, “Unknown table ‘seahub-db.UserTrafficStat’”)
[WARNING] Failed to execute sql: (1091, “Can’t DROP ‘profile_profile_contact_email_0975e4bf_uniq’; check that column/key exists”)
Done

migrating avatars …

Done

updating seafile-server-latest symbolic link to seafile-server-7.0.4 …


Upgraded your seafile server successfully.

For anyone else running into this issue, its the timezone. Having a mismatch or incorrect timezone kills the docker container. I found this by playing around with a new install, which you cannot set the timezone in the seahub settings file as it doesnt have time to create.

Solutions: Comment out the timezone line in your docker compose file.