环境搭建
环境搭建
consul
mac版本
教程:https://www.cnblogs.com/niceyoo/p/14223158.html
官网下载链接:https://www.consul.io/downloads.html
下载后,放入:/usr/local/bin 检查安装情况:
consul --version
启动consul agent -dev
Etcd
mac版本
https://etcd.io/docs/v3.5/install/
brew update
brew install etcd
etcd --version
Zookeeper
下载地址:
https://www.apache.org/dyn/closer.lua/zookeeper/zookeeper-3.8.4/apache-zookeeper-3.8.4-bin.tar.gz
解压后,创建一个用于存放data的地方
到conf文件夹
复制一个cfg文件编辑:cp zoo_sample.cfg zoo.cfg
修改dataDir目录位置
启动zookeeper:sh zkServer.sh start
使用jps
命令查看Java进程
QuorumPeerMain为zookeeper
查看运行状态:sh zkServer.sh status
停止运行:sh zkServer.sh stop
使用homebrew安装:brew install zookeeper
启动命令:zkServer start
安装后的默认路径为: /usr/local/etc/zookeeper
节点占用端口:2181,
RocketMQ
下载:https://rocketmq.apache.org/download/
启动:
### 启动namesrv
nohup sh bin/mqnamesrv &
### 验证namesrv是否启动成功
tail -f ~/logs/rocketmqlogs/namesrv.log
Redis
Docker安装Redis
docker pull redis
使用docker-compose进行部署:
version: '3'
services:
redis: # 服务名称
image: redis:latest # redis镜像版本
container_name: redis1 # 容器名称
ports:
- 6379:6379 # 指定宿主机端口与容器端口映射关系,宿主机:容器
volumes:
- ./conf/redis.conf:/etc/redis/redis.conf # 映射配置文件目录,宿主机:容器
- ./data:/data # 映射数据目录,宿主机:容器
restart: always # 容器开机自启
privileged: true # 获取宿主机root权限
command: ["redis-server","/etc/redis/redis.conf"] # 指定配置文件启动redis-server进程
目录结构如下,把文件挂载到本地:
启动:
docker-compose -f docker-compose.yml up -d
测试:
# 使用docker exec 执行容器名称为redis6容器中的redis-cli命令连接redis
docker exec -it redis1 redis-cli -a 123456
# 查看当前redis的服务信息
127.0.0.1:6379> info server
MySQL
Docker安装MySQL
docker pull mysql
使用docker-compose部署
version: '3'
services:
mysql: # 服务名称
image: mysql:latest # 或其它mysql版本
container_name: mysql1 # 容器名称
environment:
- MYSQL_ROOT_PASSWORD=123456 # root用户密码
# - TZ=Asia/Shanghai # 设置容器时区 我这里通过下面挂载方式同步的宿主机时区和时间了,这里忽略
volumes:
- ./log:/var/log/mysql # 映射日志目录,宿主机:容器
- ./data:/var/lib/mysql # 映射数据目录,宿主机:容器
- ./conf.d:/etc/mysql/conf.d # 映射配置目录,宿主机:容器
- /etc/localtime:/etc/localtime:ro # 让容器的时钟与宿主机时钟同步,避免时间的问题,ro是read only的意思,就是只读。
ports:
- 3306:3306 # 指定宿主机端口与容器端口映射关系,宿主机:容器
restart: always # 容器随docker启动自启
新建文件如下:
主要建conf.d
,data
,log
文件夹
启动
docker-compose -f docker-compose.yml up -d
将mysql配置文件复制一份到本地的conf.d
文件夹中
docker cp mysql1:/etc/my.cnf ./my.cnf
然后停止并删除原来的容器
docker-compose down
再重启:
docker-compose -f docker-compose.yml up -d
开启远程访问:
# 进入mysql容器
docker exec -it mysql1 bash
# 连接mysql -u后接账户 -p接自定义的密码
mysql -uroot -p123456
# 使用mysql库
use mysql;
alter USER 'root'@'localhost' IDENTIFIED BY '你的密码';
update user set host = "%" where user='root';
# 刷新权限
flush privileges;
Jenkins
Docker安装Jenkins
docker pull jenkins/jenkins
当前目录创建一个jenkins_home
目录
version : '3'
services:
jenkins:
user: root
restart: always
image: jenkins/jenkins
container_name: jenkins1
ports:
- 8085:8080
- 50000:50000
volumes:
- ./jenkins_home/:/var/jenkins_home/
- /var/run/docker.sock:/var/run/docker.sock
- /usr/bin/docker:/usr/bin/docker
- /etc/docker/daemon.json:/etc/docker/daemon.json
启动:
docker-compose up -d
这个目录已经被我们映射出来了,直接查看密码:
cat ./jenkins_home/secrets/initialAdminPassword
剩余配置内容放入Jenkins自动化部署博客中