docker启动mysql、redis

在docker安装过程中:
1、解决yum [Errno 256] No more mirrors to try
yum clean all
yum makecache

设置docker开机自启
systemctl enable docker

docker容器文件挂载与端口映射
启动:
docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7

参数说明:
    -p 3306:3306 :将容器的3306端口映射到主机的3306端口
    -v /mydata/mysql/log:/var/log/mysql :将日志文件夹挂载到主机
    -v /mydata/mysql/data:/var/lib/mysql:将配置文件夹挂载到主机
    -v /mydata/mysql/conf:/etc/mysql :将配置文件夹挂载到主机
    -e MYSQL_ROOT_PASSWORD=root :初始化root用户的密码
    -d mysql:5.7:后台运行,启动镜像是mysql.5.7

交互命令:docker exec -it mysql /bin/bash

mysql配置文件 my.cnf
[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation_server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

 
reids:
创建实例并启动
第一次创建的时候会把redis.conf当做文件夹,但它实际是文件,所以我们要自己先新建redis.conf文件
mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf

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

测试命令:docker exec -it redis redis-cli

redis持久化配置:
在redis.conf中配置:appendonly yes


设置容器开机启动命令:
sudo docker update redis --restart=always

问题:
1、创建容器时[Warning] IPv4 forwarding is disabled. Networking will not work.
解决办法:
1.1、在docker的宿主机中更改以下
[root@localhost ~]# vi /usr/lib/sysctl.d/00-system.conf
添加如下代码:
    net.ipv4.ip_forward=1
1.2、重启network服务
# systemctl restart network


docker从本机复制文件到docker命令:
docker cp 文件名 容器id:要复制到的路径

删除docker镜像:
docker rmi 镜像id
docker image rm 镜像id
docker rmi -f 镜像id (强制删除)

你可能感兴趣的:(docker,docker,mysql,redis)