跳至主要內容

环境搭建

环境搭建环境搭建大约 3 分钟约 872 字全民制作人ikun

环境搭建

consul

mac版本

教程:https://www.cnblogs.com/niceyoo/p/14223158.htmlopen in new window
官网下载链接:https://www.consul.io/downloads.htmlopen in new window
下载后,放入:/usr/local/bin 检查安装情况:consul --version

启动consul agent -dev

Etcd

mac版本

https://etcd.io/docs/v3.5/install/open in new window

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.gzopen in new window

解压后,创建一个用于存放data的地方

image.png
image.png

到conf文件夹

image.png
image.png

复制一个cfg文件编辑:cp zoo_sample.cfg zoo.cfg
修改dataDir目录位置

image.png
image.png

启动zookeeper:
sh zkServer.sh start
使用jps命令查看Java进程

image.png
image.png

QuorumPeerMain为zookeeper
查看运行状态:
sh zkServer.sh status
停止运行:sh zkServer.sh stop

使用homebrew安装:brew install zookeeper
启动命令:zkServer start

image.png
image.png

安装后的默认路径为: /usr/local/etc/zookeeper

节点占用端口:2181,

RocketMQ

下载:https://rocketmq.apache.org/download/open in new window

启动:

### 启动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进程

目录结构如下,把文件挂载到本地:

image-20240617225053149
image-20240617225053149

启动:

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文件夹

image-20240618110810674
image-20240618110810674

启动

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
image-20240619172001438
image-20240619172001438

这个目录已经被我们映射出来了,直接查看密码:

 cat ./jenkins_home/secrets/initialAdminPassword 

剩余配置内容放入Jenkins自动化部署博客中

MongoDB

Docker安装

上次编辑于:
贡献者: yunfeidog