目录
下载mysql容器
docker下载redis
使用root用户
下载mysql镜像 5.7版本 sudo docker pull mysql5.7
查看所有镜像 sudo docker images
创建并运行mysql容器
docker run -d -p 3306:3306 --privileged=true -v /mydata/mysql/log:/var/log/mysql -v /mydata/mysql/data:/var/lib/mysql -v /mydata/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:5.7
查看当前运行的容器 docker ps
进入到容器挂载的配置目录下 cd /mydata/mysql/conf
创建my.cnf 文件 进入目录编辑以下内容(my.cnf配置文件解决插入中文乱码)
[client]
default_character_set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8
重启mysql容器 让配置生效 docker restart mysql
进入mysql容器内部 docker exec -it mysql /bin/bash 输入账户密码
查看当前字符集 show variables like 'character%'
外部测试连接mysql (如果连接失败了,如果基本的连接信息(ip地址,端口号,用户名,密码)都没错,那就把Linux的防火墙服务关闭,命令:systemctl stop firewalld)
不小心删掉mysql这个镜像实列 可以重新创建运行mysql容器 容器挂载文件要和之前目录一致 然后重新进入容器内部 数据都还在 (删除镜像实列 docker rm -f mysql)
docker run -d -p 3306:3306 --privileged=true -v /mydata/mysql/log:/var/log/mysql -v /mydata/mysql/data:/var/lib/mysql -v /mydata/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:5.7
下载最新版本reids 可以指定版本 docker pull redis
创建 容器挂载 data、myredis.conf 文件
创建启动redis容器
–restart=always 总是开机启动
–appendonly yes 开启redis 持久化
–requirepass 000415 设置密码
docker run --restart=always --log-opt max-size=100m --log-opt max-file=2 -p 6379:6379 --name myredis -v /mydata/redis/myredis/myredis.conf:/etc/redis/redis.conf -v /mydata/redis/myredis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes --requirepass 123456
启动失败报错 重启docker service docker restart
成功界面
配置 myredis.conf文件
protected-mode no
port 6379
tcp-backlog 511
requirepass 000415
timeout 0
tcp-keepalive 300
daemonize no
supervised no
pidfile /var/run/redis_6379.pid
loglevel notice
logfile ""
databases 30
always-show-logo yes
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb
dir ./
replica-serve-stale-data yes
replica-read-only yes
repl-diskless-sync no
repl-disable-tcp-nodelay no
replica-priority 100
lazyfree-lazy-eviction no
lazyfree-lazy-expire no
lazyfree-lazy-server-del no
replica-lazy-flush no
appendonly yes
appendfilename "appendonly.aof"
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
aof-load-truncated yes
aof-use-rdb-preamble yes
lua-time-limit 5000
slowlog-max-len 128
notify-keyspace-events ""
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-size -2
list-compress-depth 0
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
hll-sparse-max-bytes 3000
stream-node-max-bytes 4096
stream-node-max-entries 100
activerehashing yes
hz 10
dynamic-hz yes
aof-rewrite-incremental-fsync yes
rdb-save-incremental-fsync yes
查看日志 docker logs --since 30m myredis
进入容器 docker exec -it myredis redis-cli
输入查看命令 没有权限 需要输入密码
查看密码 config get requirepass