Docker
虚拟化容器技术。Docker基于镜像,可以秒级启动各种容器。每一种容器都是一个完整的运行环境,容器之间相互隔离。
Docker安装步骤
详情参照docker官网(在CentOS上安装):https://docs.docker.com/engine/install/centos/
1.卸载docker
$ sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
2.安装相关命令
//安装yum-utils软件包(提供yum-config-manager 实用程序)并设置稳定的存储库。 $ sudo yum install -y yum-utils $ sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo //安装最新版本的Docker Engine和容器 $ sudo yum install docker-ce docker-ce-cli containerd.io
3.启动docker
$ sudo systemctl start docker
4.常用命令
显示当前Docker版本
$ docker -v
[vagrant@localhost ~]$ docker -v
Docker version 20.10.3, build 48d30b5检查当前Docker已下载的镜像
$ sudo docker images设置Docker开机自启动
$ sudo systemctl enable docker
配置Docker阿里云镜像加速
针对Docker客户端版本大于 1.10.0 的用户。您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器。
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://shnbjw1y.mirror.aliyuncs.com"]
}
EOFsudo systemctl daemon-reload
sudo systemctl restart docker
Docker安装mysql
从镜像仓库下载拉取镜像(sudo docker pull mysql 后不加版本号则默认下载最新版本)
$ sudo docker pull mysql:5.7
创建实例并启动(执行命令需要管理员权限,不sudo 的话可以从vagrant用户切换到root用户,默认密码为vagrant)
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.7docker run 命令执行会启动一个容器,每个容器都是一个独立的完整的linux运行环境
-p 3306:3306 mysql存在于一个独立的docker容器(可以看作是一个小的独立的linux系统)里,要访问到他需要把mysql在容器中的端口号映射到容器所在的linux环境里,这样当访问linux系统3306端口号即可访问到docker容器内部安装的mysql了。
--name mysql 给当前容器起名为mysql
-v /mydata/mysql/log:/var/log/mysql -v 操作为目录挂载,在linux目录下创建 /mydata/mysql/log 文件夹与docker容器内部的 /var/log/mysql 进行挂载,当mysql在 /var/log/mysql 目录产生日志,linux路径 /mydata/mysql/log 也同样产生,相当于在linux里生成一个指向docker容器指定路径的快捷方式。当然,修改linux路径下的文件,改动会同步到docker容器。该命令挂载mysql日志文件
-v /mydata/mysql/data:/var/lib/mysql 该命令挂载mysql数据文件
-v /mydata/mysql/conf:/etc/mysql 该命令挂载mysql配置文件
-e MYSQL_ROOT_PASSWORD=root 修改mysql root用户密码为 root
-d mysql:5.7 以mysql:5.7镜像启动
查看当前正在运行的镜像命令
docker ps
重启docker容器
docker restart mysql
以交互模式进入Docker容器
docker exec -it mysql /bin/bash
Docker安装redis
从镜像仓库下载拉取镜像
docker pull redis
创建实例并启动
mkdir -p /mydata/redis/conf
手动创建redis在linux里的配置文件目录
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.confredis-server /etc/redis/redis.conf 让redis服务器加载 /etc/redis/redis.conf 文件启动
通过linux命令测试连接
docker exec -it redis redis-cli
修改reids挂载目录配置文件,进行Redis持久化配置
更多redis详细配置可参考redis官网 :https://redis.io/topics/config
redis可视化客户端