Sign inSign up

ne4u/maxscale

By ne4u

•Updated over 4 years ago

MariaDB MaxScale - The world's most advanced database proxy.

Image
0

579

ne4u/maxscale repository overview

⁠What is This?

Current MaxScale for ARM

⁠Why?

Because ARM64 is cool and there are a lack of options for ARM that are current.

⁠Default Environment Variables

MAX_USER="maxscale" 
MAX_PASS="maxscalepass"
REST_USER="admin"
REST_PASS="password"
ENABLE_ROOT_USER=0
SPLITTER_PORT=3306
ROUTER_PORT=3307
API_PORT=8989 
CONNECTION_TIMEOUT=600s 
PERSIST_POOLMAX=0 
PERSIST_MAXTIME=3600s 
BACKEND_SERVER_LIST="server1 server2 server3" 
BACKEND_SERVER_PORT="3306" 
USE_SQL_VARIABLES_IN="all"

⁠Additional Environment Variables

  • DB_SERVICE_NAME Name of database cluster service

⁠How I Actually Use This

version: '3.5'
services:
  dblb:
    image: ne4u/maxscale:6.2.0
    networks:
      - dbnet
    ports:
      - 3306:3306
    environment:
      - DB_SERVICE_NAME=mariadb_dbcluster
      - ENABLE_ROOT_USER=1
      - MAX_USER=<<get from custom secret location>>
      - MAX_PASS=<<get from custom secret location>>
    deploy:
      mode: replicated
      replicas: 2
      placement:
        constraints: [node.role == manager]
⁠SQL Permissions
CREATE USER '$MAXSCALE_USER'@'%' identified by '$MAXSCALE_PASS';
GRANT SELECT ON mysql.user TO '$MAXSCALE_USER'@'%';
GRANT SELECT ON mysql.db TO '$MAXSCALE_USER'@'%';
GRANT SELECT ON mysql.tables_priv TO '$MAXSCALE_USER'@'%';
GRANT SELECT ON mysql.columns_priv TO '$MAXSCALE_USER'@'%';
GRANT SELECT ON mysql.procs_priv TO '$MAXSCALE_USER'@'%';
GRANT SELECT ON mysql.proxies_priv TO '$MAXSCALE_USER'@'%';
GRANT SELECT ON mysql.roles_mapping TO '$MAXSCALE_USER'@'%';
GRANT REPLICATION CLIENT ON *.* to $MAXSCALE_USER@'%';
GRANT SHOW DATABASES ON *.* TO '$MAXSCALE_USER'@'%';

Tag summary

Content type

Image

Digest

sha256:f3a92b501…

Size

374.3 MB

Last updated

over 4 years ago

docker pull ne4u/maxscale:6.4.1