前言
经常重装CentOS7,又经常记不住配置步骤,简单记录下,避免太盲目。
VM安装配置CentOS7
参考:
https://blog.csdn.net/babyxue/article/details/80970526
配置连接(外网、主机/虚拟机互通)
使用桥接模式,参考:
https://www.cnblogs.com/DJOSIMON/p/14927176.html
centos7 linux发行版本 相关操作
版本查看
1 | 1、查看CentOS镜像版本 |
配置国内源
- 备份
cd /etc/yum.repos.d/ && mkdir repo_bak && cp *.repo repo_bak
- 获取阿里开源镜像
wget http://mirrors.aliyun.com/repo/Centos-7.repo
- 清除系统yum缓存,生成新缓存
yum clean all && yum makecache
- 安装epel源
yum list | grep epel-release
yum install -y epel-release
- 获取阿里的epel源
wget -O /etc/yum.repos.d/epel-7.repo http://mirrors.aliyun.com/repo/epel-7.repo
- 再次清除系统yum缓存,生成新缓存
yum clean all && yum makecache
- 查看可用yum源和所有源
yum repolist enabled
yum repolist all
- 更新
yum update
- yum常用命令
1 | yum常用命令 |
防火墙
- 状态
systemctl status firewalld.service
- 关闭
systemctl stop firewalld.service
- 永久关闭
systemctl disable firewalld.service
客户端工具
- MobaXterm
安装zookeeper(单机、集群)
安装Docker
- 安装Docker
备注:-y 表示不询问 使用默认配置进行安装,等待提示 完毕!
yum install -y docker
- 查看是否安装成功
备注:命令为 查看yum安装完成文件列表 并 筛选docker安装信息 如下
1 | docker.x86_64 2:1.13.1-209.git7d71120.el7.centos |
yum list installed | grep docker
启动docker服务
systemctl start docker
查看是否启动成功
systemctl status docker
查看docker版本、信息
docker -v
docker info
修改镜像文件拉取地址
官方地址为国外地址安装缓慢可进行配置
1 | { |
vim /etc/docker/daemon.json
- 重启docker
systemctl restart docker
- Docker搜索镜像
docker search <镜像名称>
Docker部署MySQL
- 拉取MySQL镜像
备注:docker pull 默认到官方参考拉取(已经通过配置源解决速度问题) mysql:8.0 镜像名:镜像tag
docker pull mysql:8.0
查看镜像安装情况
docker images
启动docker中镜像
备注:
–name 服务启动别名设置
-p 端口映射 宿主机端口:镜像运行端口
-e 设置root帐号密码
-d 镜像名:tag 使用守护进程模式启动
docker run --name mysql8.0 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0
- 查看运行的镜像
1 | CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES |
docker ps -a
- 进入容器
备注:
exec docker进入容器命令
-it 容器中服务别名
/bin/bash 表示命令行模式(与 -d 后台守护进行模式启动 形成两种运行方式)
docker exec -it mysql8.0 /bin/bash
运行MySQL
cd /usr/bin
mysql -u root -p
设置容器自启动
适用于容器已经被创建,我们想要修改容器的重启策略
docker update --restart=always mysql8.0
Docker部署Redis
- 拉取最新redis
docker pull redis
- 创建宿主机挂载目录(将redis 的配置文件进行挂载)
挂载:即将宿主的文件和容器内部目录相关联,相互绑定,在宿主机内修改文件的话也随之修改容器内部文件
以配置文件方式启动 redis 容器
-p:递归创建多级目录
以下命令,是不存在就直接创建 conf、data 文件夹
mkdir -p /home/dj/tmp/redis/conf && mkdir -p /home/dj/tmp/redis/data
- 通过网络下载配置文件
-O:定义本地文件名
wget -O redis.conf http://download.redis.io/redis-stable/redis.conf
- 修改配置
1 | Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程 |
- 启动redis容器
1、–name:给这个容器取一个名字;
2、–privileged=true:开启了权限需要加此参数,不然会拒绝访问;
3、–restart=always:总是开机启动;
4、-p 16379:6379:将6379端口挂载出去为16379;
5、-v:数据卷挂载;
6、/home/dj/dev/redis/conf/redis.conf:/etc/redis/redis.conf:这里是将liunx路径下的redis.conf和redis下的redis.conf挂载在一起;
7、/home/redis/myredis/data:/data:这个同上;
8、-d redis:表示后台启动redis;
9、redis-server
/etc/redis/redis.conf:以配置文件启动redis,加载容器内的conf文件,最终找到的是挂载的目录/etc/redis/redis.conf也就是liunx下的/home/dj/dev/redis/conf/redis.conf。
1 | docker run \ |
- 查看启动状态
docker ps -a | grep redis
- 查看容器运行日志
–since 30m:查看此容器30分钟之内的日志情况。
docker logs --since 30m redis
- 进入容器
docker exec -it redis /bin/bash
再redis-cli
或者直接这样写 docker exec -it redis redis-cli
- 验证密码
config get requirepass
auth 123456
- redis.conf 配置文件
- 删除redis容器
先将容器停止运行docker stop redis
再删除容器docker rm redis
最后删除镜像docker rmi redis
Docker部署Tomcat
拉取镜像
docker pull tomcat
查看拉取的latest镜像的具体版本
docker image inspect redis:latest | grep -i version
运行Tomcat容器
若端口被占用,可以指定容器和主机的映射端口,前者是外围访问(宿主机)端口,后者是容器内部端口。
–privileged=true:
1、使用该参数,container内的root拥有真正的root权限;
2、否则,container内的root只是外部的一个普通用户权限;
3、privileged启动的容器,可以看到很多host上的设备,并且可以执行mount;
4、甚至允许你在docker容器中启动docker容器。
https://blog.csdn.net/wangxuelei036/article/details/107457712
-v /home/dj/dev/tomcat/test:/usr/local/tomcat/webapps/test:宿主机与容器内部目录挂载
1 | docker run \ |
- 访问IP:18080
可能提示404,通过
docker cp tomcat:/usr/local/tomcat/bin ./
可以把bin拷出来,方便排错,其实原因在于容器内部的webapps目录下,只有一个挂载的test目录,再无其他,当然访问报错;
解决思路:
1、可docker exec -it tomcat /bin/bash
进入容器内部,cd /usr/local/tomcat/
切换到tomcat目录下,
可以肯定的是,webapps下仅有一个test(这个还是我们手动挂载的,不然一个也没有)目录,
百度说的是将webapps删掉,再将webapps.dist重命名未webapps即可,这个方法可行,
但我们挂载了test(此文件夹正在使用),webapps是删除不了的,
另一个思路就是进入到webapps.dist重命名的目录下执行cp -rp * ../webapps/
将文件拷过去,问题同样得到解决。
这个时候再进行访问IP:18080就没问题了。但另启一个tomcat的时候,又会遇到同样的问题,更换
tomcat 8.0.52
版本镜像可以彻底解决这一问题。
部署web引用
https://blog.csdn.net/qq_32351227/article/details/78673591?spm=1001.2101.3001.6650.4&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-4-78673591-blog-123689108.pc_relevant_3mothn_strategy_recovery&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-4-78673591-blog-123689108.pc_relevant_3mothn_strategy_recovery&utm_relevant_index=9
https://blog.csdn.net/qq_43698078/article/details/125762086
https://blog.csdn.net/weixin_31569671/article/details/116877267