docker镜像商店:官方镜像商店
redis安装下载:
下载镜像:
可直接默认下载最新镜像,也可以指定版本下载【注意,版本差异不大的软件可以直接下载最新版本,差异大的,例如java,mysql等,最好指定熟悉的版本进行下载】
docker pull redis
启动镜像:
docker run --name=redis -d --restart=always -p 6379:6379 redis
--name:别名
-d:后台运行,镜像不会随窗口关闭而关闭
--restart=always:随docker启动而自启
可以进行后配置:docker update --restart=always [容器名称|id]
-p:6379[主机端口]:6379[映射端口],如果有版本号,应该带上版本号redis:6.2.6
挂载外部文件启动:
提前创建好文件夹和文件,redis.conf如果没有特别的配置,可以参考(测试环境,生产环境换成本地,关闭密码即可):
#redis使用自定义配置文件启动
docker run -v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-v /mydata/redis/data:/data \
-d --name redis \
--restart=always \
-p 6379:6379 \
redis:latest redis-server /etc/redis/redis.conf
#最后这一句代表自启动方式,redis启动默认不加载此处配置
redis-server /etc/redis/redis.conf
mysql安装下载:
镜像参考redis直接下载对应版本即可。
-v:配置挂载,冒号左边为容器内部想要挂载出去的配置路径,右边为挂载的实际路径
例如:mysql,挂载日志,数据,配置等信息到外部
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/my.cnf:/etc/mysql/my.cnf \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7
修改配置文件 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
lower_case_table_names=1
最后说一下文件外部挂载的优缺点:
优点:修改配置方便,不用每次都进入容器内部
缺点:外部挂载方式镜像将不可以打包传递