mariadb, redis, jar 发布到docker

1.拉取镜像:

https://hub.docker.com/search?q=&type=image

找到对应得镜像,拉取到本地,如果是离线,自己上传上去

2. 查看镜像 docker images:

3. 启动一个mariadb 实例

mkdir -p /data/mariadb/data 建一个目录作为和容器的映射目录

启动MariaDB实例很简单:

docker run --name mariadb -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /data/mariadb/data:/var/lib/mysql -d mariadb

... wheresome-mariadb是要分配给容器的名称,123456 是要为MySQL根用户设置的密码,请参阅上面的列表以获取相关标签。

 4. 进入容器

docker exec -it XXX /bin/bash               XXX 为 container id

mysql -uroot -p123456    登录到命令行

5. 设置权限,这里参考windows上MySQL的处理  https://www.cnblogs.com/leolzi/p/11497925.html

 GRANT ALL PRIVILEGES ON *.* TO 'root'@'172.10.0.123' IDENTIFIED BY '123456' WITH GRANT OPTION;
 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
 FLUSH   PRIVILEGES;

6.配置文件修改

    • 从容器中拷贝一份mariadb配置文件(或者是直接创建文件)

      sudo docker cp mariadb:/etc/mysql/conf.d/docker.cnf  /data/mariadb/my.cnf

  • 修改my.cnf,在 [mysqld] 节点下添加

    [mysqld]

    skip-host-cache
    skip-name-resolve

    server-id=1

    log_bin=logs-bin

    expire-logs-days = 14

    max-binlog-size = 50000M

    sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

    thread_cache_size=200

    max_connections=2000

    wait_timeout = 300

    interactive_timeout = 500

    # use cache

    query_cache_size=2048M

    query_cache_type=1

    • 复制master_my.cnf并覆盖master中的my.cnf

      docker cp /data/mariadb/my.cnf mariadb:/etc/mysql/conf.d/docker.cnf

    • 重启master容器

      docker restart mariadb

 

09 Redis 镜像安装

9.1 下载配置文件

从官网获取 redis.conf 配置文件,安装要求修改  放到对应的位置 ,并创建目录:mkdir -p /data/redis/data

/data/redis/redis.conf

 修改文件

配置远程访问:

protected-mode yes

注释掉

#bind 127.0.0.1

9.2 docker 启动 redis 命令

docker run -p 6379:6379 --name redis -v /data/redis/redis.conf:/etc/redis/redis.conf -v /data/redis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes

命令解释说明:

  • -p 6379:6379 端口映射:前表示主机部分,:后表示容器部分。
  • --name myredis  指定该容器名称,查看和进行操作都比较方便。
  • -v 挂载目录,规则与端口映射相同。
  • -d redis 表示后台启动redis
  • redis-server /etc/redis/redis.conf  以配置文件启动redis,加载容器内的conf文件,最终找到的是挂载的目录/usr/local/docker/redis.conf
  • appendonly yes 开启redis 持久化

9.3 使用 docker exec -it redis /bin/bash进入redis
9.3

原文地址:https://www.cnblogs.com/leolzi/p/13791074.html