Thursday, 5 July 2018

005- Docker Storage

Introduction:




Create "mariadb" container and mount "/var/lib/mysql" dir in the "container" to be "/var/local/mysql" dir in the "host":

[ab@fedora28 ~]$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
[root@fedora28 ~]# hostname
fedora28.ab.lab

[root@fedora28 ~]# id
uid=0(root) gid=0(root) groups=0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

[root@fedora28 ~]# mkdir -v /var/local/mysql
mkdir: created directory '/var/local/mysql'

[root@fedora28 ~]# setenforce 0

[root@fedora28 ~]# chown -vR 27:27 /var/local/mysql/                        <--- MYSQL UID/GID == 27
changed ownership of '/var/local/mysql/' from root:root to 27:27
[ab@fedora28 ~]$ docker search mariadb
NAME                                                      DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
mariadb                                                   MariaDB is a community-developed fork of MyS…   2048                [OK]                
[ab@fedora28 ~]$ docker pull mariadb
[ab@fedora28 ~]$ docker help run | grep -e "\-v," -e "-e," 
  -v, --volume list                    Bind mount a volume
  -e, --env list                       Set environment variables
[ab@fedora28 ~]$ docker run --name mariadb -d -v /var/local/mysql:/var/lib/mysql -e MYSQL_USER=user -e MYSQL_PASSWORD=password -e MYSQL_DATABASE=addresses -e MYSQL_ROOT_PASSWORD=password mariadb
1608b89587613e59b001c60324e329c151d55e39a73fcaf5903f99be326d39de
[ab@fedora28 ~]$ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
1608b8958761        mariadb             "docker-entrypoint.s…"   23 seconds ago      Up 22 seconds       3306/tcp            mariadb

[root@fedora28 ~]# ls /var/local/mysql/
addresses  aria_log.00000001  aria_log_control  ib_buffer_pool  ibdata1  ib_logfile0  ib_logfile1  ibtmp1  multi-master.info  mysql  performance_schema  tc.log
[ab@fedora28 ~]$ docker exec -it mariadb /bin/bash
root@1608b8958761:/# ls /var/lib/mysql/
addresses  aria_log.00000001  aria_log_control ib_buffer_pool ib_logfile0  ib_logfile1  ibdata1  ibtmp1  multi-master.info  mysql  performance_schema  tc.log

root@1608b8958761:/# mysql -u user -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 15
Server version: 10.3.8-MariaDB-1:10.3.8+maria~jessie mariadb.org binary distribution

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| addresses          |
| information_schema |
+--------------------+
2 rows in set (0.001 sec)

MariaDB [(none)]> Bye

No comments:

Post a Comment