widows10上使用docker搭建本地nacos2.1.1和mysql5.7.16的单机开发环境

1.原因

  由于我使用了windows10上安装了docker搭建本地开发环境遇到的问题跟大家分享下

2.搭建mysql5.7.16环境

2.1 windows10环境下安装

  在windows的d盘下新建一个mysql路径,在mysql路径下新建logs、data、conf目录用于挂载mysql5.7.16的日志、数据和配置文件路径映射:

docker run -p 3306:3306 --name mysql_server --privileged=true -v "d:/mysql/logs":/var/log/mysql -v "d:/mysql/data":/var/lib/mysql -v "d:/mysql/conf":/etc/mysql -e MYSQL_ROOT_PASSWORD=123456 -itd mysql:5.7.16

2.2 Linux环境下安装

  在Linux上可以使用如下命令启动,同样需要先创建/mysql/logs、/mysql/data和/mysql/conf路径:

docker run -p 3306:3306 --name mysql_server --privileged=true -v /mysql/logs:/var/log/mysql -v /mysql/data:/var/lib/mysql -v /mysql/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=123456 -itd mysql:5.7.16

2.3 额外参数

  后面还可以跟如下参数:字符集和排序规则

 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci

  该命令启动后已经是授权全部ip可以远程连接了的,如果没有授权远程连接,需要授权下

2.4 docker启动mysql容器授权远程访问

  运行如下命令进入mysql容器:

docker exec -it mysql容器id或名称 /bin/bash

  mysql 授权远程访问
  登录进入mysql,执行命令:

mysql -u root -p

  检查是否给root用户授权了远程访问

use mysql;
select  User,authentication_string,Host from user;

  看user为root,host为%数据,我这里是已经开启了远程访问,如果没有的话,可以进行以下操作:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456';

  这里的123456为你给新增权限用户设置的密码,%代表所有主机,也可以具体到你的主机ip地址

  刷新权限:

flush privileges;

  退出容器然后重启mysql容器即可。

2.4 注意

  注意1.在windows10下挂载的本地路径需要写"",文件路径的斜杠是这种写的/,这个也是很坑的一个地方,不然这个挂载路径写不对的话,启动的容器是起不来的
  注意2:由于window10上我安装的docker是先安装了wsl2(windows 子系统 ),所以mysql 5.7版本 在windows 子系统 wsl2中无法正常挂载目录,会遇到权限问题“[ERROR] Could not set file permission for ca-key.pem”,要用 mysql 5.7.16 以上版本

3.更换德班debian8的镜像源遇到的问题

3.1 问题

报错:
W: GPG error: http://mirrors.aliyun.com stretch Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 04EE7237B7D453EC NO_PUBKEY 648ACFD622F3D138 NO_PUBKEY 0E98404D386FA1D9 NO_PUBKEY EF0F382A1A7B6500

  更换debian8的镜像源为清华大学的镜像源后执行:

apt-get update

  更新apt-get报错如上所示,配置debian8的镜像源为清华大学的镜像源下面有教程

3.2 配置配置debian8的镜像

vim /etc/apt/sources.list

  如果没有安装vim,可以在window10的Docker Desktop的容器列表中找到启动的mysql5.7.16的容器然后点击Files找到sources.list文件,双击就开打开,把上面的镜像源粘贴进去,ctrl+s保存即可:

在这里插入图片描述

  或者是使用Linux的远程连接工具链接到这个容器中借助远程工具的力量搞了这个文件的编辑和修改

  镜像源配置如下:

# 自带的
#deb http://deb.debian.org/debian jessie main
#deb http://deb.debian.org/debian jessie-updates main
#deb http://security.debian.org jessie/updates main
#deb http://mirrors.aliyun.com/debian/ stretch main non-free contrib


# 新加的
# start
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
# deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
# deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
# deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
# deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse

3.3 解决办法

  证书公钥下载导入:

gpg --keyserver  keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32

gpg --export --armor 3B4FE6ACC0B21F32 | sudo apt-key add -

3.4 重新更新apt-get

apt-get update

3.5 下载安装软件

apt-get install xxx

3.6 安装sudo、vim等

  用dpkg -l|grep sudo查看,发现默认就没有安装sudo,只能自己装了:
先su到root用户,然后执行 apt-get install sudo

apt-get install sudo
sudo apt-get install vim

3.7 说明

  debian8操作系统是不支持ifconfig包的下载的
在你在德班这个版本上安装yum后
sudo apt-get yum
yum install -y ifconfig

root@eb7cb6b67fa5:~# yum install -y ifconfig
There are no enabled repos.
Run “yum repolist all” to see the repos you have.
You can enable repos with yum-config-manager --enable

  这个报错的意思是不支持

3.8 查看mysql5.7.16的ip信息

#Debian系列:
ip addr
#RedHat系列:
ifconfg

4.RedHat系列和Debian系列的了解

  一般来说Linux系统基本上分两大类:

    RedHat系列:Redhat、Centos、Fedora等
    Debian系列:DDebian、Ubuntu等…

  RedHat系列:
     常见的安装包格式rpm包、安装rpm包的命令:rpm-参数
     包管理工具yum
     支持tar包

  Debian系列:
     常见的安装包格式deb包、安装rpm包的命令:deb-参数
     包管理工具apt-get
     支持tar包
  所以,也就是说,直接用apt-get就行了,别用yum。
所以在德班操作系统上查看网卡使用:
  ip addr就可以

5.搭建nacos2.1.1单机

  在搭建之前先要去nacos的gitHub官网下载一个源码包

https://github.com/alibaba/nacos/releases

在这里插入图片描述

在这里插入图片描述

  下载nacos2.1.1的nacos的conf下的nacos-mysql.sql的sql文件

在这里插入图片描述

  在本地的mysql5.7.16的数据库使用Navicat远程连接上去新建一个nacos的数据库,然后把这个nacos-mysql.sql的sql文件执行导入到nacos的库中:

在这里插入图片描述

  启动单机nacos2.1.1的容器:

docker run -d --name nacos2.1.1  --privileged=true -e MODE=standalone -e MYSQL_SERVICE_HOST=localhost -e MYSQL_SERVICE_PORT=3306 -e MYSQL_SERVICE_USER=root -e MYSQL_SERVICE_PASSWORD=123456 -e MYSQL_SERVICE_DB_NAME=nacos -p 8848:8848 -p 9848:9848 -p 9849:9849 registry.cn-hangzhou.aliyuncs.com/bigfei/zlf:nacos-server2.1.1

  访问本地的nacos:

在这里插入图片描述

6.总结

  到此使用widows10的dockerd搭建nacos、mysql的单机开发环境就分享好了,希望我的分享对大家有帮助,请一键三连,么么哒!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要在Docker中安装Nacos 2.1.1集群并配置MySQL 8,可以按照以下步骤进行操作: 1. 首先,确保您已经安装了DockerDocker Compose。 2. 下载Nacos 2.1.1的安装包,解压缩后进入nacos/conf目录。 3. 在conf目录中,创建一个新的nacos-config-custom.yaml文件,并将以下配置复制到该文件中: ```yaml server: context-path: /nacos tomcat: max-http-post-size: 50000000 modify-username: false file-extension: - yml - properties - xml - json spring: profiles: active: dev datasource: platform: mysql driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://mysql-container:3306/nacos_devtest?useUnicode=true&characterEncoding=utf8&autoReconnect=true&serverTimezone=UTC username: ${MYSQL_USERNAME:nacos} password: ${MYSQL_PASSWORD:nacos} maxi-pool-size: 20 mini-idle: 10 max-idle: 20 acquire-increment: 10 time-between-eviction-runs-millis: 20000 jackson: date-format: yyyy-MM-dd HH:mm:ss time-zone: GMT+8 management.endpoints.web.exposure.include: '*' ``` 这个配置文件包含了NacosMySQL的连接信息。注意修改url、username和password,确保与您的MySQL集群配置一致。 4. 创建一个docker-compose.yaml文件,并将以下配置复制到该文件中: ```yaml version: '3' services: mysql-container: image: mysql:8 container_name: mysql-nacos environment: - MYSQL_ROOT_PASSWORD=root - MYSQL_DATABASE=nacos_devtest ports: - 3306:3306 nacos-standalone-1: image: nacos/nacos-server:2.1.1 hostname: nacos-standalone-1 container_name: nacos-standalone-1 volumes: - ./conf/nacos/config/:/home/nacos/init.d/custom.properties - ./logs/nacos:/home/nacos/logs ports: - 8848:8848 depends_on: - mysql-container environment: - PREFER_HOST_MODE=hostname nacos-standalone-2: image: nacos/nacos-server:2.1.1 hostname: nacos-standalone-2 container_name: nacos-standalone-2 volumes: - ./conf/nacos/config/:/home/nacos/init.d/custom.properties - ./logs/nacos:/home/nacos/logs ports: - 8849:8848 depends_on: - mysql-container environment: - PREFER_HOST_MODE=hostname ``` 这个docker-compose文件定义了一个MySQL容器和两个Nacos容器,分别用于部署Nacos集群。MySQL容器使用MySQL 8的镜像,并设置了密码和数据库名称。Nacos容器使用Nacos 2.1.1的镜像,并将配置文件和日志目录映射到本地。 5. 在命令行中进入docker-compose.yaml所在的目录,并运行以下命令启动集群: ``` docker-compose up -d ``` 这会启动集群并在后台运行。 6. 等待一段时间,然后通过访问http://localhost:8848/nacos/ 来验证Nacos集群是否成功部署。您将看到Nacos的登录界面。 现在,您已经成功地使用Docker Compose安装了Nacos 2.1.1集群,并配置了MySQL 8。您可以进一步在Nacos中配置您的应用程序和服务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值