跳转至

环境搭建

开发工具 版本号 安装位置
IntelliJ-IDEA 2021.x以上版本 个人电脑
JDK 1.8.x 个人电脑
Maven 3.8.x以上版本 个人电脑
Git 2.37.x 个人电脑
VMware-workstation 16.x 个人电脑
CentOS 7.x 虚拟机
Docker 18.09.0 虚拟机
Mysql 8.x docker
nacos 1.4.1 docker
rabbitmq 3.8.34 docker
redis 6.2.7 docker
xxl-job-admin 2.3.1 docker
minio RELEASE.2022-09-07 docker
elasticsearch 7.12.1 docker
kibana 7.12.1 docker
gogs 0.13.0 docker
nginx 1.12.2 docker

虚拟机

  1. 安装VMware

  2. VMware打开虚拟机,选择ContOS7-hmtt.vmx文件,先挂载上。

  3. VMware-编辑-虚拟网络编辑器,修改虚拟网络地址(NAT),把网段改为200(当前挂载的虚拟机已固定ip地址)

image-20240706174049154

  1. 指定系统的网络为刚才设置的网络(NAT)。

  2. 修改虚拟机的网络模式为NAT

image-20210407205431849

  1. 启动虚拟机,用户名:root 密码:itcast,当前虚拟机的ip已手动固定(静态IP), 地址为:192.168.200.130
  2. 使用FinalShell客户端链接

image-20210407205502305

docker

安装Docker

1. 更新系统

sudo yum update -y 是用来更新系统中所有已安装的软件包和依赖项。具体作用如下:

  1. 更新软件包:下载并安装最新版本的软件包,修复已知的漏洞和错误。
  2. 提高系统安全性:通过应用安全补丁来保护系统免受已知漏洞的攻击。
  3. 增强稳定性:更新可能包含性能改进和功能增强。
  4. 自动确认-y 选项自动确认所有提示,省去手动输入 yes 的步骤。

使用这个命令可以确保系统软件处于最新和最安全的状态。

2. 安装必要的软件包

sudo yum install -y yum-utils

3. 设置 Docker 仓库

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

4. 安装 Docker 引擎

sudo yum install -y docker-ce docker-ce-cli containerd.io

5. 启动并设置 Docker 开机自启

sudo systemctl start docker
sudo systemctl enable docker

6. 验证安装

运行以下命令确认 Docker 安装成功:

sudo docker run hello-world

7. 配置非 root 用户使用 Docker(可选)

如果希望以非 root 用户运行 Docker:

sudo usermod -aG docker $USER

然后退出并重新登录以应用更改。

完成这些步骤后,Docker 应该已经在您的 Alibaba Cloud Linux 3.2104 LTS 系统上成功安装并运行。

启动docker

systemctl start docker
sh /data/soft/restart.sh

查看所有镜像

列出所有本地 Docker 镜像的信息,包括镜像仓库、标签、镜像ID、创建时间和大小等。

docker images

该命令用于列出当前正在运行的 Docker 容器。

docker ps

搜索容器

xxl-job-admin

docker search xxl-job-admin

配置 Docker 使用镜像加速器

由于网络问题,可能需要配置 Docker 使用国内的镜像加速器。例如,使用阿里云的加速器:

  1. 登录阿里云,容器镜像服务--镜像工具--镜像加速器,获取专属加速器地址。
  2. 修改 Docker 配置文件 /etc/docker/daemon.json,添加以下内容:
{
  "registry-mirrors": ["https://<your-accelerator-id>.mirror.aliyuncs.com"]
}
  1. 重启 Docker 服务:
sudo systemctl daemon-reload
sudo systemctl restart docker

MySQL

在 Docker 中安装 MySQL。

1. 拉取 MySQL 镜像

从 Docker Hub 拉取 MySQL 官方镜像:

docker pull mysql:latest

2. 运行 MySQL 容器

使用以下命令启动一个 MySQL 容器:

docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:latest
  • --name mysql-container:为容器命名。
  • -e MYSQL_ROOT_PASSWORD=my-secret-pw:设置 MySQL root 用户的密码。
  • -d:创建一个守护式容器在后台运行,后台运行容器。
  • mysql:latest:使用最新的 MySQL 镜像。

3. 连接到 MySQL 容器

进入MySQL 容器

docker exec -it mysql-container

登录MySQL

mysql -u root -p

输入密码 my-secret-pw

exit:退出连接。

设置并修改root 可以通过任何客户端连接

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'my-secret-pw';

4. 持久化数据

为了持久化数据,可以使用卷挂载:

docker run --name mysql-container -v /my/own/datadir:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:latest
  • /my/own/datadir:用于存储 MySQL 数据的本地目录。

5. 端口映射

MySQL 只在容器内部的默认端口 3306 上运行,如果需要从主机访问 MySQL,可以映射端口:

停止并删除现有容器

docker stop mysql-container
docker rm mysql-container

重新启动容器并映射端口

docker run -d --name mysql-container -p 3306:3306 -e MYSQL_ROOT_PASSWORD=my-secret-pw mysql:latest
docker run --name mysql-container -p 3306:3306 -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:latest
  • -p 3306:3306:映射端口,将容器的 3306 端口映射到主机的 3306 端口。

可以通过服务器的 IP 地址和端口 3306 访问 MySQL。

连接docker mysql报错

2003 - Can't connect to MySQL server on 'xx.xxx.xx.xxx' (10061 "Unknown error")

原因是没有映射端口。

2059 - Authentication plugin 'caching_sha2_password' cannot be loaded:

这个错误通常是因为客户端不支持 MySQL 8.0 默认的 caching_sha2_password 身份验证插件。你可以通过以下方法解决:

  1. 更改 MySQL 用户的身份验证插件

在 MySQL 容器中执行以下命令,将用户的身份验证插件改为 mysql_native_password

docker exec -it mysql-container mysql -u root -p

然后在 MySQL 提示符下执行:

ALTER USER 'youruser'@'%' IDENTIFIED WITH mysql_native_password BY 'yourpassword';
FLUSH PRIVILEGES;

确保替换 youruseryourpassword 为实际的用户名和密码。

  1. 重新配置 MySQL 以使用 mysql_native_password

如果你希望新创建的用户默认使用 mysql_native_password,可以在 MySQL 配置文件中设置默认身份验证插件。编辑 MySQL 配置文件(如 my.cnf),添加以下内容:

[mysqld]
default_authentication_plugin=mysql_native_password

然后重启 MySQL 容器。

  1. 更新客户端

如果可能,更新你的 MySQL 客户端到支持 caching_sha2_password 的版本。

完成以上步骤后,重新尝试连接到数据库。

MySQL自带的系统数据库

  1. information_schema:提供数据库元数据的访问,比如数据库、表、列的数据类型和访问权限等。

  2. mysql:包含MySQL服务器的核心数据,比如用户账户、权限设置、系统设置等。

  3. performance_schema:用于收集数据库服务器性能参数和执行情况的数据。

  4. sys:提供了一组视图,帮助用户更容易地理解performance_schema中的数据。

这些数据库是MySQL系统正常运行所必需的,不建议修改。

Nacos

Nacos 是一个开源的动态服务发现、配置管理和服务管理平台,由阿里巴巴开源。Nacos 是 "Dynamic Naming and Configuration Service" 的缩写,它为微服务架构提供了关键的基础设施支持。

Nacos 的主要功能包括:

  1. 服务发现和服务健康监测
  2. Nacos 可以帮助服务在注册中心进行注册和发现。服务实例可以通过 Nacos 注册自己,并且其他服务可以通过 Nacos 查找这些服务实例。
  3. Nacos 提供了服务健康检查机制,确保服务实例的可用性。

  4. 动态配置管理

  5. Nacos 提供集中化的配置管理功能,允许开发者在一个地方管理所有的配置项。配置的变更可以实时推送到应用程序中。
  6. 支持配置的版本管理和灰度发布,方便进行配置的管理和控制。

  7. 动态 DNS 服务

  8. Nacos 提供 DNS 服务,可以将服务发现和 DNS 解析结合起来,方便服务的调用。

  9. 服务管理

  10. 提供服务的元数据管理、流量管理、熔断降级等功能,帮助提升系统的稳定性和可靠性。

Nacos 支持多种服务发现协议(如 HTTP、gRPC、Dubbo 等)和多种配置格式(如 YAML、Properties、JSON 等),并且可以与 Spring Cloud、Kubernetes 等生态系统集成。

Nacos 的典型应用场景包括微服务架构中的服务注册与发现、配置管理,以及分布式系统中的服务治理。

Nacos通常安装在Linux服务器上。

Nacos作用:

  • 作为注册中心
  • 作为配置中心

Nacos安装

1、docker拉取镜像

docker pull nacos/nacos-server:1.2.0

2、创建容器

针对nacos镜像创建容器

docker run --env MODE=standalone --name nacos --restart=always  -d -p 8848:8848 nacos/nacos-server:1.2.0
  • docker run 启动容器
  • MODE=standalone 单机版
  • --restart=always 开机启动

3、访问nacos地址:http://192.168.200.130:8848/nacos

重启容器:

docker restart 容器id