MariaDB Docker开始失败

我试图用Docker 1.13.1启动MariaDB。

docker run -d --name mariadb -e MYSQL_ROOT_PASSWORD=password -p 3306:3306 -p 4567:4567/udp -p 4567-4568:4567-4568 -p 4444:4444 -v /mnt/data/mysql:/var/lib/mysql mariadb:10.1 chown -R mysql:mysql /var/lib/mysql && mysqld --user=mysql --wsrep-new-cluster 

开始后我得到以下输出:

 2017-05-11 20:04:55 139780804880320 [Note] mysqld (mysqld 10.1.23-MariaDB-1~jessie) starting as process 6 ... 2017-05-11 20:04:55 139780804880320 [Note] InnoDB: Using mutexes to ref count buffer pool pages 2017-05-11 20:04:55 139780804880320 [Note] InnoDB: The InnoDB memory heap is disabled 2017-05-11 20:04:55 139780804880320 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins 2017-05-11 20:04:55 139780804880320 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier 2017-05-11 20:04:55 139780804880320 [Note] InnoDB: Compressed tables use zlib 1.2.8 2017-05-11 20:04:55 139780804880320 [Note] InnoDB: Using Linux native AIO 2017-05-11 20:04:55 139780804880320 [Note] InnoDB: Using SSE crc32 instructions 2017-05-11 20:04:55 139780804880320 [Note] InnoDB: Initializing buffer pool, size = 256.0M 2017-05-11 20:04:55 139780804880320 [Note] InnoDB: Completed initialization of buffer pool 2017-05-11 20:04:55 139780804880320 [Note] InnoDB: The first specified data file ./ibdata1 did not exist: a new database to be created! 2017-05-11 20:04:55 139780804880320 [Note] InnoDB: Setting file ./ibdata1 size to 12 MB 2017-05-11 20:04:55 139780804880320 [Note] InnoDB: Setting log file ./ib_logfile101 size to 48 MB 2017-05-11 20:04:55 139780804880320 [Note] InnoDB: Setting log file ./ib_logfile1 size to 48 MB 2017-05-11 20:04:56 139780804880320 [Note] InnoDB: Renaming log file ./ib_logfile101 to ./ib_logfile0 2017-05-11 20:04:56 139780804880320 [Warning] InnoDB: New log files created, LSN=45883 2017-05-11 20:04:56 139780804880320 [Note] InnoDB: Doublewrite buffer not found: creating new 2017-05-11 20:04:56 139780804880320 [Note] InnoDB: Doublewrite buffer created 2017-05-11 20:04:56 139780804880320 [Note] InnoDB: 128 rollback segment(s) are active. 2017-05-11 20:04:56 139780804880320 [Warning] InnoDB: Creating foreign key constraint system tables. 2017-05-11 20:04:56 139780804880320 [Note] InnoDB: Foreign key constraint system tables created 2017-05-11 20:04:56 139780804880320 [Note] InnoDB: Creating tablespace and datafile system tables. 2017-05-11 20:04:56 139780804880320 [Note] InnoDB: Tablespace and datafile system tables created. 2017-05-11 20:04:56 139780804880320 [Note] InnoDB: Waiting for purge to start 2017-05-11 20:04:56 139780804880320 [Note] InnoDB: Percona XtraDB (http://www.percona.com) 5.6.35-80.0 started; log sequence number 0 2017-05-11 20:04:56 139780029413120 [Note] InnoDB: Dumping buffer pool(s) not yet started 2017-05-11 20:04:56 139780804880320 [Note] Plugin 'FEEDBACK' is disabled. 2017-05-11 20:04:56 139780804880320 [ERROR] Could not open mysql.plugin table. Some plugins may be not loaded 2017-05-11 20:04:56 139780804880320 [ERROR] Can't open and lock privilege tables: Table 'mysql.servers' doesn't exist 2017-05-11 20:04:56 139780804880320 [Note] Server socket created on IP: '::'. 2017-05-11 20:04:56 139780804880320 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist 

mysql用户拥有该目录,并能够创buildibdata1和相关文件。 我无法弄清楚是不是无法创build其他表格和/或为什么没有读取它们?

固定:

 docker run -d --name mariadb -e MYSQL_ROOT_PASSWORD=password -p 3306:3306 -p 4567:4567/udp -p 4567-4568:4567-4568 -p 4444:4444 -v /mnt/data/mysql:/var/lib/mysql mariadb:10.1 /bin/bash -c 'chown -R mysql:mysql /var/lib/mysql && mysqld --user=mysql --wsrep-new-cluster' 

问题是&&之后的所有东西都不是作为命令行插入到容器中,而是插入到主机shell中,除非正确引用了/ bin / bash的-c选项的参数(/ bin / sh也是有效的) 。