一、centos7操作docker
(一)、安装docker服务
> yum update #更新yum
> yum install /path/to/package.rpm #手动安装Docker CE包,安装包下载路径[https://download.docker.com/linux/centos/7/x86_64/stable/Packages/ ](https://download.docker.com/linux/centos/7/x86_64/stable/Packages/ )
> yum install https://yum.dockerproject.org/repo/main/centos/7/Packages/docker-engine-1.10.0-1.el7.centos.x86_64.rpm #方式2直接下载
创建配置文件
docker安装后默认没有daemon.json配置文件,需要进行手动创建。配置文件的默认路径:/etc/docker/daemon.json
注意事项:
1 配置文件中的项目参数基本与启动参数相同,具体应查看官方文档
2最低生效版本(1.13.1)
3官方文档: https://docs.docker.com/engine/reference/commandline/
4docker镜像官网:https://hub.docker.com/
(二)、docker使用命令
1. 安装命令
> systemctl start docker.service #启动docker服务
> systemctl stop docker.service #停止docker服务
> docker version #查看docker版本
> docker run hello-world #运行映像验证是否安装正确
> sudo systemctl enable docker #设置docker开机自启动
> yum list installed | grep docker #查看已安装的docker列表
> yum -y remove XXXX #XXXX为已安装的docker名称
2. 使用命令
# 提交容器并打包新镜像
> docker commit
# docker 镜像保存为压缩包
> docker save
# 镜像压缩包转变为镜像
> docker load
# 删除命令
> docker rm dockername #删除docker容器,也可用容器ID,区分唯一性即可(删除多个容器用空格分隔)
> docker rmi imagename #删除docker镜像,也可用镜像ID,区分唯一性即可(删除多个容器用空格分隔)
# 数据挂载
> docker run -v 宿主机地址:容器地址:读取方式(ro只读不能修改容器地址内信息、rw读写)
> docker run -v /data/html:/usr/share/nginx/html:ro
> docker cp 容器ID:/etc/nginx/nginx.conf /data/conf/nginx.conf
# 镜像推送
> docker tag
> docker push
> docker login
> docker logout
3. docker-compose命令
> docker-compose up -d #docker-compose.yml
二、Redis部署使用详解
(一)、Redis基础命令使用
容器名称:text_redis
容器内端口:6379,对应宿主机端口:6301
对应docker镜像:redis:rc-alpine3.12
对应root密码:123456
> docker run -d --name text_redis -p 6301:6379 redis:rc-alpine3.12 --requirepass "123456"
(二)、Redis 之 docker-compose文件部署
version: '3.1'
services:
redis:
# redis 镜像 : 版本
image: redis:alpine3.13
# 容器重启策略:
restart: always
privileged: true
ports:
- 9003:6379
container_name: redis
volumes:
- ./conf/redis/sysctl.conf:/etc/sysctl.conf
- ./conf/redis/redis.conf:/etc/redis/redis.conf
- /home/data/redis/crontabs:/etc/crontabs
- /home/data/redis/datadir:/data
- /home/data/redis/logs:/etc/redis/logs
command: redis-server /etc/redis/redis.conf
(三)、创建conf/redis.conf
#redis配置文件样例
# Note on units: when memory size is needed, it is possible to specifiy
# it in the usual form of 1k 5GB 4M and so forth:
#
# 1k => 1000 bytes
# 1kb => 1024 bytes
# 1m => 1000000 bytes
# 1mb => 1024*1024 bytes
# 1g => 1000000000 bytes
# 1gb => 1024*1024*1024 bytes
#
# units are case insensitive so 1GB 1Gb 1gB are all the same.
# Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程
# 启用守护进程后,Redis会把pid写到一个pidfile中,在/var/run/redis.pid
daemonize no
# 当Redis以守护进程方式运行时,Redis默认会把pid写入/var/run/redis.pid文件,可以通过pidfile指定
pidfile /var/run/redis.pid
# 指定Redis监听端口,默认端口为6379
# 如果指定0端口,表示Redis不监听TCP连接
port 6379
# 绑定的主机地址
# 你可以绑定单一接口,如果没有绑定,所有接口都会监听到来的连接
# bind 127.0.0.1
# Specify the path for the unix socket that will be used to listen for
# incoming connections. There is no default, so Redis will not listen
# on a unix socket when not specified.
#
# unixsocket /tmp/redis.sock
# unixsocketperm 755
# 当客户端闲置多长时间后关闭连接,如果指定为0,表示关闭该功能
timeout 0
# 指定日志记录级别,Redis总共支持四个级别:debug、verbose、notice、warning,默认为verbose
# debug (很多信息, 对开发/测试比较有用)
# verbose (many rarely useful info, but not a mess like the debug level)
# notice (moderately verbose, what you want in production probably)
# warning (only very important / critical messages are logged)
loglevel verbose
# 日志记录方式,默认为标准输出,如果配置为redis为守护进程方式运行,而这里又配置为标准输出,则日志将会发送给/dev/null
# logfile /etc/redis/logs/redis.log
# To enable logging to the system logger, just set 'syslog-enabled' to yes,