简体   繁体   中英

Docker On windows10 Volume permissions “ a STORAGE ENGINE failed.”

This morning i try to install Docker on my laptop (windows10), (My Docker use hyper-v)

I try to use this basic docker-compose

version: '2'

services:
    mariadb:
      image: mariadb
      container_name: mariadb
      ports:
        - "3306:3306"
      volumes:
        - ./mysql1/:/var/lib/mysql
      environment:
        MYSQL_USER : root
        MYSQL_ROOT_PASSWORD: root

I have some error on running :

docker-compose up
Creating mariadb
Attaching to mariadb
mariadb    | 2017-04-04  8:29:00 140557637724096 [Note] mysqld (mysqld 10.1.22-MariaDB-1~jessie) starting as process 1 ...
mariadb    | 2017-04-04  8:29:00 140557637724096 [Note] InnoDB: Using mutexes to ref count buffer pool pages
mariadb    | 2017-04-04  8:29:00 140557637724096 [Note] InnoDB: The InnoDB memory heap is disabled
mariadb    | 2017-04-04  8:29:00 140557637724096 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
mariadb    | 2017-04-04  8:29:00 140557637724096 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
mariadb    | 2017-04-04  8:29:00 140557637724096 [Note] InnoDB: Compressed tables use zlib 1.2.8
mariadb    | 2017-04-04  8:29:00 140557637724096 [Note] InnoDB: Using Linux native AIO
mariadb    | 2017-04-04  8:29:00 140557637724096 [Note] InnoDB: Using SSE crc32 instructions
mariadb    | 2017-04-04  8:29:00 140557637724096 [Note] InnoDB: Initializing buffer pool, size = 256.0M
mariadb    | 2017-04-04  8:29:00 140557637724096 [Note] InnoDB: Completed initialization of buffer pool
mariadb    | 2017-04-04  8:29:00 140557637724096 [ERROR] InnoDB: auto-extending data file ./ibdata1 is of a different size 0 pages (rounded down to MB) than specified in the .cnf file: initial 768 pages, max 0 (relevant if non-zero) pages!
mariadb    | 2017-04-04  8:29:00 140557637724096 [ERROR] InnoDB: Could not open or create the system tablespace. If you tried to add new data files to the system tablespace, and it failed here, you should now edit innodb_data_file_path in my.cnf back to what it was, and remove the new ibdata files InnoDB created in this failed attempt. InnoDB only wrote those files full of zeros, but did not yet use them in any way. But be careful: do not remove old data files which contain your precious data!
mariadb    | 2017-04-04  8:29:00 140557637724096 [ERROR] Plugin 'InnoDB' init function returned error.
mariadb    | 2017-04-04  8:29:00 140557637724096 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
mariadb    | 2017-04-04  8:29:00 140557637724096 [Note] Plugin 'FEEDBACK' is disabled.
mariadb    | 2017-04-04  8:29:00 140557637724096 [ERROR] Could not open mysql.plugin table. Some plugins may be not loaded
mariadb    | 2017-04-04  8:29:00 140557637724096 [ERROR] Unknown/unsupported storage engine: InnoDB
mariadb    | 2017-04-04  8:29:00 140557637724096 [ERROR] Aborting
mariadb    |
mariadb exited with code 1

after running my directory ./mysql1/ and subfile was created :

C:\USERS\--------\DOCUMENTS\DOCKER\MARIADB\MYSQL1
|   aria_log.00000001
|   aria_log_control
|   ibdata1
|
\---mysql

Yes I know that it's about my volumes (something about permissions or access or ...) I have no ideas how solve it.

I was experiencing the same issue and the only way I could figure out how to resolve this was to delete the MARIADB\\MYSQL1 folder. Yes, I lost all of the database records from all of my development sites, but for me, it was all test information anyway so no real data was lost.

After I deleted the MYSQL1 folder, I ran:

docker-compose build --no-cache MariaDB

Then I started up the container:

docker-compose up -d mariadb

The error finally went away and I was able to use my MariaDB container again. Hope this helps someone in the future!

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM