vagrant系列:
vagrant init centos/7:初始化vagrant并下载一个centos/7的虚拟机(多一个vagrantfile文件)
vagrant -v:查看版本
vagrant up 启动虚拟机
vagrant reload:重启虚拟机
vagrant halt:关闭虚拟机
vagrant ssh:以ssh形式连接虚拟机
vagrant stauts:查看虚拟机的状态
注意:Vagrant安装的Linux镜像的root用户密码是vagrant
切换用户:su root
密码:vagrant
docker系列:
安装docker:
1.清除系统上的docker
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2.安装所需的软件包
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
3.设置仓库
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
4.安装docker需要的工具
sudo yum install docker-ce docker-ce-cli containerd.io
5.启动docker:
sudo systemctl start docker
6.查看docker版本:
docker -v
7.查看docker容器信息:
sudo docker images
8.设置开机自动启动 docker:
sudo systemctl enable docker
下载阿里云镜像加速(依次录入)
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://5k0civc0.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
使用docker常用命令
docker images #查看所有已下载的镜像
docker rmi 镜像ID #移除一个下载的镜像实例
docker ps #查看正在运行的镜像
docker start 容器名称/容器ID #启动一个容器
docker rm 容器名称/容器ID #移除一个容器实例
docker stop 容器名称/容器ID #停止一个容器运行
docker exec -it 容器ID/容器ID bin/bash #进入容器内部控制台
docker restart 容器名称/容器ID #重启mysql容器
docker update 容器名称/容器ID --restart=always #设置启动docker的时候启动mysql 例如:docker update mysql --restart=always
docker之mysql系列:
1.下载mysql:docker pull mysql:5.7
2.启动mysql
docker run -p 3306:3306 --name mysql
–privileged=true
-v /mydata/mysql/log:/var/log/mysql
-v /mydata/mysql/data:/var/lib/mysql
-v /mydata/mysql/conf:/etc/mysql
-e MYSQL_ROOT_PASSWORD=123456
-d mysql:5.7
-p 端口映射
--name 容器名称
-e 密码
-v 挂载 linux路径:docker路径
-d 镜像版本
---privileged 防止挂载失败
非常注意:{
docker run -p 3306:3306 --name mysql \
-v /opt/data/mysql/log:/var/log/mysql \
-v /opt/data/mysql/data:/var/lib/mysql \
-v /opt/data/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:5.7
注意:若挂在目录不是自己创建的文件 而是系统文件夹 opt 会出现无法启动
无法启动原因:
CentOS7中的安全模块selinux把权限禁掉了,无法使用-v命令进行挂载
解决方法:
添加selinux规则,将要挂载的目录添加到白名单
chcon -Rt svirt_sandbox_file_t /opt/data/mysql/log
chcon -Rt svirt_sandbox_file_t /opt/data/mysql/data
chcon -Rt svirt_sandbox_file_t /opt/data/mysql/conf
chcon -Rt svirt_sandbox_file_t /opt/data/mysql/conf/my.cnf
添加完后,删除旧的mysql容器,再重新添加一个,成功启动
}
4.配置mysql的配置文件
1.编辑:
vi /mydata/mysql/conf/my.cnf
2.内容:(配置内容有问题 会导致无法挂载)
[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
collection-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
进入mysql的镜像:docker exec -it mysql bash
docker之redis
1.下载redis:
docker pull redis
2.创建redis配置文件(不先创建会遇到坑)
mkdir -p /mydata/redis/conf
touch mydata/redis/conf/redis.conf
3.创建redis容器
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
4.进入redis客户端:
docker exec -it redis redis-cli
5.重启redis:
docker restart redis
7.修改redis配置:(注:默认的redis配置是数据存在内存中关机就会丢失全部数据)
进入到redis的配置文件中:
cd /mydata/redis/conf/redis.conf
修改配置:
编辑:
vi redis.conf
内容:
appendonly yes 保存
whereis mysql #查看跟mysql有关的文件
sudo systemctl stop firewalld #关闭centos/7的防火墙