Sign inSign up

ipepe/tmpfs-mysql

By ipepe

•Updated about 6 years ago

Image
0

4.9K

ipepe/tmpfs-mysql repository overview

⁠docker-tmpfs-mysql

Mysql with ramdisk for data. Normal approach for doing this would be to pass tmpfs configuration into docker directly but on Mac or CI You may not be able to do so. This code works around that.

⁠docker-compose

  tmpfs_mysqldb:
    image: ipepe/tmpfs-mysql:5.7
    privileged: true
    environment:
      - MYSQL_ALLOW_EMPTY_PASSWORD=true
      - MYSQLD_RAM_MB_SIZE=1000
    ports:
      - "3306:3306"

⁠Official/Normal approach

⁠via docker cli

docker run --rm -p 3306:3306 -e MYSQL_ROOT_PASSWORD=finger --tmpfs=/var/lib/mysql/:rw,noexec,nosuid,size=600m --tmpfs=/tmp/:rw,noexec,nosuid,size=50m mysql:5.7

⁠via docker-compose

  mysql-57:
    image: mysql:5.7
    ports:
     - "3306:3306"
    volumes:
     - "/opt/docker/mysql.conf.d:/etc/mysql/conf.d"
    environment:
     - MYSQL_ROOT_PASSWORD=finger
    tmpfs:
     - /var/lib/mysql/:rw,noexec,nosuid,size=600m
     - /tmp/:rw,noexec,nosuid,size=50m

/opt/docker/mysql.conf.d/custom.cnf

[mysqld]
  bind-address             = 0.0.0.0
  
  innodb_flush_log_at_trx_commit = 2
  innodb_lock_wait_timeout = 50

  max_connect_errors       = 1000000
  max_connections          = 900

  character-set-server           = utf8
  sql_mode                       = ""
  innodb                         = FORCE
  default-storage-engine         = InnoDB
  max_allowed_packet             = 256M

Tag summary

Content type

Image

Digest

Size

147.3 MB

Last updated

about 6 years ago

docker pull ipepe/tmpfs-mysql:5.7