I am trying to use the docker compose
method to install seafile
in a VM
.
These are the logs from docker compose logs -f
ataching to seafile, seafile-memcached, seafile-mysql
seafile-mysql | 2023-06-14 06:26:00+00:00 [Note] [Entrypoint]: Entrypoint script for MariaDB Server 1:10.6.14+maria~ubu2004 started.
seafile-mysql | 2023-06-14 06:26:00+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
seafile-mysql | 2023-06-14 06:26:00+00:00 [Note] [Entrypoint]: Entrypoint script for MariaDB Server 1:10.6.14+maria~ubu2004 started.
seafile | *** Running /etc/my_init.d/01_create_data_links.sh...
seafile | mv: failed to preserve ownership for '/shared/logs/var-log/bootstrap.log': Operation not permitted
seafile | mv: failed to preserve ownership for '/shared/logs/var-log/btmp': Operation not permitted
seafile | mv: failed to preserve ownership for '/shared/logs/var-log/wtmp': Operation not permitted
seafile | mv: failed to preserve ownership for '/shared/logs/var-log/journal': Operation not permitted
seafile | mv: failed to preserve ownership for '/shared/logs/var-log/private': Operation not permitted
seafile | mv: failed to preserve ownership for '/shared/logs/var-log/syslog': Operation not permitted
seafile-mysql | 2023-06-14 06:26:00+00:00 [Note] [Entrypoint]: Initializing database files
seafile | mv: failed to preserve ownership for '/shared/logs/var-log/faillog': Operation not permitted
seafile | mv: failed to preserve ownership for '/shared/logs/var-log/lastlog': Operation not permitted
seafile | mv: failed to preserve ownership for '/shared/logs/var-log/nginx/access.log': Operation not permitted
seafile | mv: failed to preserve ownership for '/shared/logs/var-log/nginx/error.log': Operation not permitted
seafile | mv: failed to preserve ownership for '/shared/logs/var-log/nginx': Operation not permitted
seafile | mv: failed to preserve ownership for '/shared/logs/var-log/alternatives.log': Operation not permitted
seafile | mv: failed to preserve ownership for '/shared/logs/var-log/apt/eipp.log.xz': Operation not permitted
seafile | mv: failed to preserve ownership for '/shared/logs/var-log/apt/history.log': Operation not permitted
seafile | mv: failed to preserve ownership for '/shared/logs/var-log/apt/term.log': Operation not permitted
seafile | mv: failed to preserve ownership for '/shared/logs/var-log/apt': Operation not permitted
seafile | mv: failed to preserve ownership for '/shared/logs/var-log/dpkg.log': Operation not permitted
seafile | mv: failed to preserve ownership for '/shared/logs/var-log': Operation not permitted
seafile | *** Booting runit daemon...
seafile | *** Runit started as PID 16
seafile | *** Running /scripts/enterpoint.sh...
seafile | 2023-06-14 11:56:01 Nginx ready
seafile | 2023-06-14 11:56:01 This is an idle script (infinite loop) to keep container running.
seafile | mv: failed to preserve ownership for '/shared/nginx/conf/seafile.nginx.conf': Operation not permitted
seafile-mysql |
seafile-mysql |
seafile-mysql | PLEASE REMEMBER TO SET A PASSWORD FOR THE MariaDB root USER !
seafile-mysql | To do so, start the server, then issue the following command:
seafile-mysql |
seafile-mysql | '/usr/bin/mariadb-secure-installation'
seafile-mysql |
seafile-mysql | which will also give you the option of removing the test
seafile-mysql | databases and anonymous user created by default. This is
seafile-mysql | strongly recommended for production servers.
seafile-mysql |
seafile-mysql | See the MariaDB Knowledgebase at https://mariadb.com/kb
seafile-mysql |
seafile-mysql | Please report any problems at https://mariadb.org/jira
seafile-mysql |
seafile-mysql | The latest information about MariaDB is available at https://mariadb.org/.
seafile-mysql |
seafile-mysql | Consider joining MariaDB's strong and vibrant community:
seafile-mysql | https://mariadb.org/get-involved/
seafile-mysql |
seafile-mysql | 2023-06-14 06:26:03+00:00 [Note] [Entrypoint]: Database files initialized
seafile-mysql | 2023-06-14 06:26:03+00:00 [Note] [Entrypoint]: Starting temporary server
seafile-mysql | 2023-06-14 06:26:03+00:00 [Note] [Entrypoint]: Waiting for server startup
seafile-mysql | 2023-06-14 6:26:03 0 [Note] Starting MariaDB 10.6.14-MariaDB-1:10.6.14+maria~ubu2004 source revision c93754d45e5d9379e3e23d7ada1d5f21d2711f66 as process 89
seafile-mysql | 2023-06-14 6:26:03 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
seafile-mysql | 2023-06-14 6:26:03 0 [Note] InnoDB: Number of pools: 1
seafile-mysql | 2023-06-14 6:26:03 0 [Note] InnoDB: Using generic crc32 instructions
seafile-mysql | 2023-06-14 6:26:03 0 [Note] mariadbd: O_TMPFILE is not supported on /tmp (disabling future attempts)
seafile-mysql | 2023-06-14 6:26:03 0 [Note] InnoDB: Using Linux native AIO
seafile-mysql | 2023-06-14 6:26:03 0 [Note] InnoDB: Initializing buffer pool, total size = 134217728, chunk size = 134217728
seafile-mysql | 2023-06-14 6:26:03 0 [Note] InnoDB: Completed initialization of buffer pool
seafile-mysql | 2023-06-14 6:26:03 0 [Note] InnoDB: 128 rollback segments are active.
seafile-mysql | 2023-06-14 6:26:03 0 [Note] InnoDB: Creating shared tablespace for temporary tables
seafile-mysql | 2023-06-14 6:26:03 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
seafile-mysql | 2023-06-14 6:26:03 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB.
seafile-mysql | 2023-06-14 6:26:03 0 [Note] InnoDB: 10.6.14 started; log sequence number 42120; transaction id 14
seafile-mysql | 2023-06-14 6:26:03 0 [Note] Plugin 'FEEDBACK' is disabled.
seafile-mysql | 2023-06-14 6:26:03 0 [Warning] 'user' entry 'root@15905f624311' ignored in --skip-name-resolve mode.
seafile-mysql | 2023-06-14 6:26:03 0 [Warning] 'proxies_priv' entry '@% root@15905f624311' ignored in --skip-name-resolve mode.
seafile-mysql | 2023-06-14 6:26:03 0 [Note] mariadbd: ready for connections.
seafile-mysql | Version: '10.6.14-MariaDB-1:10.6.14+maria~ubu2004' socket: '/run/mysqld/mysqld.sock' port: 0 mariadb.org binary distribution
seafile-mysql | 2023-06-14 06:26:06+00:00 [Note] [Entrypoint]: Temporary server started.
seafile-mysql | 2023-06-14 06:27:30+00:00 [Note] [Entrypoint]: Securing system users (equivalent to running mysql_secure_installation)
seafile-mysql |
seafile-mysql | 2023-06-14 06:27:30+00:00 [Note] [Entrypoint]: Stopping temporary server
seafile-mysql | 2023-06-14 6:27:30 0 [Note] mariadbd (initiated by: unknown): Normal shutdown
seafile-mysql | 2023-06-14 6:27:30 0 [Note] InnoDB: FTS optimize thread exiting.
seafile-mysql | 2023-06-14 6:27:30 0 [Note] InnoDB: Starting shutdown...
seafile-mysql | 2023-06-14 6:27:30 0 [Note] InnoDB: Dumping buffer pool(s) to /var/lib/mysql/ib_buffer_pool
seafile-mysql | 2023-06-14 6:27:30 0 [Note] InnoDB: Buffer pool(s) dump completed at 230614 6:27:30
seafile-mysql | 2023-06-14 6:27:31 0 [Note] InnoDB: Removed temporary tablespace data file: "./ibtmp1"
seafile-mysql | 2023-06-14 6:27:31 0 [Note] InnoDB: Shutdown completed; log sequence number 42132; transaction id 15
seafile-mysql | 2023-06-14 6:27:31 0 [Note] mariadbd: Shutdown complete
seafile-mysql |
seafile-mysql | 2023-06-14 06:27:31+00:00 [Note] [Entrypoint]: Temporary server stopped
seafile-mysql |
seafile-mysql | 2023-06-14 06:27:31+00:00 [Note] [Entrypoint]: MariaDB init process done. Ready for start up.
seafile-mysql |
seafile-mysql | 2023-06-14 6:27:31 0 [Note] Starting MariaDB 10.6.14-MariaDB-1:10.6.14+maria~ubu2004 source revision c93754d45e5d9379e3e23d7ada1d5f21d2711f66 as process 1
seafile-mysql | 2023-06-14 6:27:31 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
seafile-mysql | 2023-06-14 6:27:31 0 [Note] InnoDB: Number of pools: 1
seafile-mysql | 2023-06-14 6:27:31 0 [Note] InnoDB: Using generic crc32 instructions
seafile-mysql | 2023-06-14 6:27:31 0 [Note] mariadbd: O_TMPFILE is not supported on /tmp (disabling future attempts)
seafile-mysql | 2023-06-14 6:27:31 0 [Note] InnoDB: Using Linux native AIO
seafile-mysql | 2023-06-14 6:27:31 0 [Note] InnoDB: Initializing buffer pool, total size = 134217728, chunk size = 134217728
seafile-mysql | 2023-06-14 6:27:31 0 [Note] InnoDB: Completed initialization of buffer pool
seafile-mysql | 2023-06-14 6:27:31 0 [Note] InnoDB: 128 rollback segments are active.
seafile-mysql | 2023-06-14 6:27:31 0 [Note] InnoDB: Creating shared tablespace for temporary tables
seafile-mysql | 2023-06-14 6:27:31 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
seafile-mysql | 2023-06-14 6:27:31 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB.
seafile-mysql | 2023-06-14 6:27:31 0 [Note] InnoDB: 10.6.14 started; log sequence number 42132; transaction id 14
seafile-mysql | 2023-06-14 6:27:31 0 [Note] Plugin 'FEEDBACK' is disabled.
seafile-mysql | 2023-06-14 6:27:31 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/mysql/ib_buffer_pool
seafile-mysql | 2023-06-14 6:27:31 0 [Note] InnoDB: Buffer pool(s) load completed at 230614 6:27:31
seafile-mysql | 2023-06-14 6:27:31 0 [Warning] You need to use --log-bin to make --expire-logs-days or --binlog-expire-logs-seconds work.
seafile-mysql | 2023-06-14 6:27:31 0 [Note] Server socket created on IP: '0.0.0.0'.
seafile-mysql | 2023-06-14 6:27:31 0 [Note] Server socket created on IP: '::'.
seafile-mysql | 2023-06-14 6:27:31 0 [Note] mariadbd: ready for connections.
seafile-mysql | Version: '10.6.14-MariaDB-1:10.6.14+maria~ubu2004' socket: '/run/mysqld/mysqld.sock' port: 3306 mariadb.org binary distribution
seafile-mysql | 2023-06-14 6:27:32 3 [Warning] Aborted connection 3 to db: 'unconnected' user: 'root' host: '172.27.0.4' (Got an error reading communication packets)
seafile | Checking python on this machine ...
seafile |
seafile-mysql | 2023-06-14 6:27:32 5 [Warning] Aborted connection 5 to db: 'ccnet_db' user: 'seafile' host: '172.27.0.4' (Got an error reading communication packets)
seafile-mysql | 2023-06-14 6:27:33 6 [Warning] Aborted connection 6 to db: 'seafile_db' user: 'seafile' host: '172.27.0.4' (Got an error reading communication packets)
seafile-mysql | 2023-06-14 6:27:35 7 [Warning] Aborted connection 7 to db: 'seahub_db' user: 'seafile' host: '172.27.0.4' (Got an error reading communication packets)
seafile |
seafile | verifying password of user root ... done
seafile |
seafile | ---------------------------------
seafile | This is your configuration
seafile | ---------------------------------
seafile |
seafile | server name: seafile
seafile | server ip/domain: seafile.example.com
seafile |
seafile | seafile data dir: /opt/seafile/seafile-data
seafile | fileserver port: 8082
seafile |
seafile | database: create new
seafile | ccnet database: ccnet_db
seafile | seafile database: seafile_db
seafile | seahub database: seahub_db
seafile | database user: seafile
seafile |
seafile |
seafile | Generating ccnet configuration ...
seafile |
seafile | Generating seafile configuration ...
seafile |
seafile | done
seafile | Generating seahub configuration ...
seafile |
seafile | ----------------------------------------
seafile | Now creating ccnet database tables ...
seafile |
seafile | ----------------------------------------
seafile | ----------------------------------------
seafile | Now creating seafile database tables ...
seafile |
seafile | ----------------------------------------
seafile | ----------------------------------------
seafile | Now creating seahub database tables ...
seafile |
seafile | ----------------------------------------
seafile |
seafile | creating seafile-server-latest symbolic link ... done
seafile |
seafile |
seafile |
seafile |
seafile | -----------------------------------------------------------------
seafile | Your seafile server configuration has been finished successfully.
seafile | -----------------------------------------------------------------
seafile |
seafile | run seafile server: ./seafile.sh { start | stop | restart }
seafile | run seahub server: ./seahub.sh { start <port> | stop | restart <port> }
seafile |
seafile | -----------------------------------------------------------------
seafile | If you are behind a firewall, remember to allow input/output of these tcp ports:
seafile | -----------------------------------------------------------------
seafile |
seafile | port of seafile fileserver: 8082
seafile | port of seahub: 8000
seafile |
seafile | When problems occur, Refer to
seafile |
seafile | https://download.seafile.com/published/seafile-manual/home.md
seafile |
seafile | for information.
seafile |
seafile |
seafile-mysql | 2023-06-14 6:27:35 4 [Warning] Aborted connection 4 to db: 'unconnected' user: 'root' host: '172.27.0.4' (Got an error reading communication packets)
seafile |
seafile | Error: the user running the script ("root") is not the owner of "/shared/seafile/seafile-data" folder, you should use the user "UNKNOWN" to run the script.
seafile | [2023-06-14 11:57:32] Now running setup-seafile-mysql.py in auto mode.
seafile | [2023-06-14 11:57:36] Updating version stamp
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | waiting for mysql server to be ready: %s (2003, "Can't connect to MySQL server on 'db' ([Errno 111] Connection refused)")
seafile | Traceback (most recent call last):
seafile | File "/scripts/start.py", line 95, in <module>
seafile | main()
seafile | File "/scripts/start.py", line 80, in main
seafile | call('{} start'.format(get_script('seafile.sh')))
seafile | File "/scripts/utils.py", line 70, in call
seafile | return subprocess.check_call(*a, **kw)
seafile | File "/usr/lib/python3.8/subprocess.py", line 364, in check_call
seafile | raise CalledProcessError(retcode, cmd)
seafile | subprocess.CalledProcessError: Command '/opt/seafile/seafile-server-10.0.1/seafile.sh start' returned non-zero exit status 255.
And this is my docker-compose.yml
file,
version: '2.0'
services:
db:
image: mariadb:10.6
container_name: seafile-mysql
environment:
- MYSQL_ROOT_PASSWORD=MY_PASSWORD # Requested, set the root's password of MySQL service.
- MYSQL_LOG_CONSOLE=true
volumes:
# - ./appdata/seafile/db:/var/lib/mysql # Requested, specifies the path to MySQL data persistent store.
- dbdata:/var/lib/mysql # Requested, specifies the path to MySQL data persistent store.
networks:
- seafile-net
memcached:
image: memcached:1.6.18
container_name: seafile-memcached
entrypoint: memcached -m 256
networks:
- seafile-net
seafile:
image: seafileltd/seafile-mc:latest
container_name: seafile
ports:
- "80:80"
# - "443:443" # If https is enabled, cancel the comment.
volumes:
- /mnt/data:/shared # Requested, specifies the path to Seafile data persistent store.
environment:
- PGID=100
- PUID=1000
- DB_HOST=db
- DB_ROOT_PASSWD=MY_PASSWORD # Requested, the value shuold be root's password of MySQL service.
- TIME_ZONE=MY_TIMEZONE # Optional, default is UTC. Should be uncomment and set to your local time zone.
# - SEAFILE_ADMIN_EMAIL=me@example.com # Specifies Seafile admin user, default is 'me@example.com'.
# - SEAFILE_ADMIN_PASSWORD=asecret # Specifies Seafile admin password, default is 'asecret'.
# - SEAFILE_SERVER_LETSENCRYPT=false # Whether to use https or not.
# - SEAFILE_SERVER_HOSTNAME=docs.seafile.com # Specifies your host name if https is enabled.
depends_on:
- db
- memcached
networks:
- seafile-net
networks:
seafile-net:
volumes:
dbdata:
the storage for db is local in the VM only using docker volume and storage for seafile
container i.e /mnt/data/
is a nfs
share with all_squash, anongid=100, anonuid=1000, rw
options set.
I use a couple of other services like this only (with a nfs share) and they seem to work fine.