1.安装docker
官方文档地址:https://docs.docker.com/engine/install/
1.卸载旧版本docker:
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2.安装Docker 需要的安装包
yum install -y yum-utils
3.设置镜像的仓库(官网默认是国外的,这里选用阿里的,因为速度比较快)
yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
4.更新yum软件包索引
yum makecache fast
5.安装docker相关的 docker-ce 社区版 而ee是企业版
yum install docker-ce docker-ce-cli containerd.io
6.启动docker
systemctl start docker
7.查看docker是否安装成功
docker version
8.测试 docker
docker run hello-world
证明docker已经安装成功
9.卸载docker命令
#1. 卸载依赖
yum remove docker-ce docker-ce-cli containerd.io
#2. 删除资源
rm -rf /var/lib/docker
# /var/lib/docker 是docker的默认工作路径!
2.设置阿里云镜像加速
安装阿里docker镜像加速:登录阿里云 控制台 产品于更多 镜像加速
```
CentOS/7 配置镜像加速器
针对Docker客户端版本大于 1.10.0 的用户
您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://0go0ovwg.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
3.设置docker自启动
systemctl enable docker
4.docker常用命令
docker version #显示docker的版本信息。
docker info #显示docker的系统信息,包括镜像和容器的数量
docker 命令 --help #帮助命令
docker images #查看所有本地主机上的镜像 可以使用docker image ls代替
docker search 搜索镜像
docker pull 下载镜像 docker image pull
docker rmi 删除镜像 docker image rm
docker pull mysql 下载镜像
5.docker安装测试mysql
1.安装mysql
docker pull mysql:5.7
2.mysql是否成功运行
docker images
3.创建实例并启动
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.7
参数说明:
-p 3306:3306:将容器的3306端口映射到主机的3306端口
-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:初始化root用户的密码
4.查看当前正在运行的容器
docker ps
5.主机使用工具测试连接mysql
6.进入mysql容器控制台 设置vim /etc/my.cof
进入mysql容器控制台
docker exec -it mysql /bin/bash
查看mysql位置
whereis mysql
exit退出容器
7.cd /mydata
cd mysql
cd conf
设置vi 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
8.重启mysql
重启mysql
docker restart mysql
查看my.cnf 是否存在
docker exec -it mysql /bin/bash
cd etc/mysql
ls
查看文件内容
cat my.cnf
设置mysql自动启动
sudo docker update mysql --restart=always
附加:需要安装canal来监控数据库数据的变化,从而获得新增数据,或者修改的数据。
1. 开启binlog模式
//1.连接到mysql中
cd /mydata/mysql/conf/
vi my.cnf
//2.设置 #server-id不能设置的与canal一样
log-bin/var/lib/mysql/mysql-bin
server-id=12345
#然后使用root账号创建用户并授予权限
create user canal@'%' IDENTIFIED by 'canal';
GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT,SUPER ON *.* TO 'canal'@'%';
FLUSH PRIVILEGES;
2.canal容器安装与配置
//1.canal容器安装 下载镜像:
docker pull docker.io/canal/canal-server
//2.容器安装
docker run -p 11111:11111 --name canal -d docker.io/canal/canal-server
//3.进入容器
docker exec -it canal /bin/bash
//4.修改核心配置canal.propertiescanal.properties 是canal自身的配置,
cd canal-server/conf/
vi canal.properties
//5.修改instance.properties,instance.properties是需要同步数据的数据库连接配置。
cd example/
vi instance.properties
3.这里的canal.instance.filter.regex
有多种配置,如下:可以参考地址如下:
https://github.com/alibaba/canal/wiki/AdminGuide
mysql 数据解析关注的表,Perl正则表达式.
多个正则之间以逗号(,)分隔,转义符需要双斜杠(\\)
常见例子:
1. 所有表:.* or .*\\..*
2. canal schema下所有表: canal\\..*
3. canal下的以canal打头的表:canal\\.canal.*
4. canal schema下的一张表:canal.test1
5. 多个规则组合使用:canal\\..*,mysql.test1,mysql.test2 (逗号分隔)
注意:此过滤条件只针对row模式的数据有效(ps. mixed/statement因为不解析sql,所以无法准确提取tableName进行过滤)
4.配置完成后,设置开机启动,并记得重启canal。
docker update --restart=always canal
docker restart canal
6.docker安装测试redis
1.安装redis
docker pull redis
2.创建文件夹
mkdir -p /mydata/redis/conf
3.创建.conf文件
touch /mydata/redis/conf/redis.conf
4.创建实例并启动redisv
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
然后可以通过 docker ps 查看
5.配置redis持久化
进入reids控制台
docker exec -it redis redis-cli
6.exit 然后进入/mydata/redis/conf 编辑 vi redis.conf 添加
appendonly yes
7.设置redis自动启动
docker update redis --restart=always
7.docker安装测试jdk1.8
1.8安装包
链接:https://pan.baidu.com/s/1wtaPqLo-GWoA3Cobx54IZg
提取码:jqbs
复制这段内容后打开百度网盘手机App,操作更方便哦
1.首先上传到服务器 上传方法众多
2.解压上传服务器的安装包 然后剪切到一个目录
tar -zxvf jdk-8u211-linux-x64.tar.gz
mv jdk1.8.0_211/ /mydata/jdk
3.设置java 环境变量,配置profile
vi /etc/profile
//在文件末尾加上这些配置
JAVA_HOME=/opt/jdk/
JAVA_BIN=/opt/jdk/bin
JRE_HOME=/opt/jdk/jre
CLASSPATH=/opt/jdk/jre/lib:/opt/jdk/lib:/opt/jdk/jre/lib/charsets.jar
export JAVA_HOME JAVA_BIN JRE_HOME PATH CLASSPATH
4.配置 bashrc
vi ~/.bashrc
//依旧在末尾加入就行
export JAVA_HOME=/opt/jdk
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
5.使得配置立马有效
source ~/.bashrc
6.查看成功:
java -version
8.docker安装Elasticsearch
注意:先设置max_map_count的值 不然会报错
//1.查看max_map_count的值 默认是65530
cat /proc/sys/vm/max_map_count
//2.重新设置max_map_count的值
sysctl -w vm.max_map_count=262144
1. docker下载Elasticsearch 镜像
#拉取镜像
docker pull elasticsearch:7.7.0
2.安装Elasticsearch 容器
#启动镜像
docker run --name elasticsearch -d -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" -p 9200:9200 -p 9300:9300 elasticsearch:7.7.0
9200端口(Web管理平台端口) 9300(服务默认端口)
浏览器输入地址访问:http://ip地址:9200/
9.docker安装FastDFS
1.拉取镜像
docker pull morunchang/fastdfs
2.运行tracker
docker run -d --name tracker --net=host morunchang/fastdfs sh tracker.sh
3.运行storage
docker run -d --name storage --net=host -e TRACKER_IP=自己的ip:22122 -e GROUP_NAME=group1 morunchang/fastdfs sh storage.sh
4.查看启动容器 docker ps 设置
开启启动设置
docker update --restart=always tracker
docker update --restart=always storage
5.配置Nginx
Nginx在这里主要提供对FastDFS图片访问的支持,Docker容器中已经集成了Nginx,我们需要修改nginx的配置,进入storage的容器内部,修改nginx.conf
docker exec -it storage /bin/bash
进入后
vi /etc/nginx/conf/nginx.conf
添加以下内容(正常情况已经自动配置过了)
location ~ /M00 {
root /data/fast_data/data;
ngx_fastdfs_module;
}
禁止缓存:
add_header Cache-Control no-store;
退出容器
exit
6.重启storage容器
docker restart storage
注意:firewall-cmd --zone=public --add-port=22122/tcp --permanent # 开放22122端口
firewall-cmd --zone=public --add-port=23000/tcp --permanent # 开放23000端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent # 开放8080端口
firewall-cmd --reload # 配置立即生效
(不然上传文件会报错)
connect to server 81.70.4.17:22122
fail java.net.ConnectException: Connectio
10.linux安装Lua
由于我安装在 /mydata中
cd /mydata
//创建lua
mkdir lua
cd lua
//安装lua
curl -R -O http://www.lua.org/ftp/lua-5.3.5.tar.gz
//解压
tar zxf lua-5.3.5.tar.gz
//进入文件夹
cd lua-5.3.5
//安装
make linux test
//如果报错就是缺少依赖
yum install libtermcap-devel ncurses-devel libevent-devel readline-devel
//此时再执行lua测试看lua是否安装成功 lua 或者 lua -i
[root@localhost ~]# lua
Lua 5.1.4 Copyright (C) 1994-2008 Lua.org, PUC-Rio
11.linux安装openresty
//1.添加仓库执行命令
yum install yum-utils
yum-config-manager --add-repo https://openresty.org/package/centos/openresty.repo
//2.执行安装
yum install openresty
//3.执行安装
yum install openresty-resty
//4.查看openresty 仓库里头的软件包
yum --disablerepo="*" --enablerepo="openresty" list available
//5.安装成功后 会在默认的目录如下:
/usr/local/openresty
//6.测试 启动
/sbin/service openresty start