专业的东莞网站推广,iot物联网平台开发,如何建立团购网站,做会员卡的网站在线下面是一个简单的例子#xff0c;展示如何通过Docker Compose文件部署Nacos、MySQL和Redis。请确保您的机器上已经安装了Docker和Docker Compose。
1#xff0c;准备好mysql、redis、nacos镜像
sudo docker pull mysql:8 sudo docker pull redis:7.2 …下面是一个简单的例子展示如何通过Docker Compose文件部署Nacos、MySQL和Redis。请确保您的机器上已经安装了Docker和Docker Compose。
1准备好mysql、redis、nacos镜像
sudo docker pull mysql:8 sudo docker pull redis:7.2 sudo docker pull nacos/nacos-server:v2.4.3 2如果因为网络问题没有下载到可以直接下载镜像包
mysql:8镜像包 redis:7.2镜像包nacos/nacos-server:v2.4.3镜像包 3根据需求下载Docker镜像包然后导入到Docker
sudo docker load -i xxxx.tar
4查看docker-compose 版本
sudo docker-compose -version 5如果遇到以下情况说明docker-compose没有安装 6docker-compose没有的话则根据以下地址下载
sudo curl -L https://github.com/docker/compose/releases/download/$(curl -s https://api.github.com/repos/docker/compose/releases/latest | grep tag_name | cut -d -f 4)/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
7如果因为网络或者下载慢可根据以下连接进行下载然后放到服务器 /usr/local/bin下以下是centos x86_64
docker-compose 8设置权限
sudo chmod x /usr/local/bin/docker-compose
9创建符号链接如果需要的话这一步是可选的用于将 Docker Compose 添加到 PATH 中以便可以在任何位置运行它
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose 10验证安装
sudo docker-compose -version
11创建nacos数据库SQL导入Dockerfile
sudo vi Dockerfile
FROM mysql:8
ADD https://raw.githubusercontent.com/alibaba/nacos/develop/distribution/conf/mysql-schema.sql /docker-entrypoint-initdb.d/nacos-mysql.sql
RUN chown -R mysql:mysql /docker-entrypoint-initdb.d/nacos-mysql.sql
EXPOSE 3306
CMD [mysqld, --character-set-serverutf8mb4, --collation-serverutf8mb4_unicode_ci]12创建Docker Compose文件 在工作目录下创建一个名为docker-compose.yml的文件
sudo vi docker-compose.yml
version: 3.8services:ncc-mysql:container_name: ncc-mysqlrestart: unless-stoppedbuild:context: .dockerfile: ./Dockerfileimage: mysql:8privileged: truevolumes:- /data/ncc/mysql:/var/lib/mysqlports:- 3306:3306environment:- TZAsia/Shanghai- MYSQL_ROOT_PASSWORDmysql2024- MYSQL_DATABASEnacos- MYSQL_USERnacos- MYSQL_PASSWORDnacos2024- LANGC.UTF-8healthcheck:test: [ CMD, mysqladmin ,ping, -h, localhost ]interval: 5stimeout: 10sretries: 10networks:- ncc-dockerncc-nacos:container_name: ncc-nacosrestart: unless-stoppedimage: nacos/nacos-server:v2.4.3privileged: truevolumes:- /data/ncc/nacos:/home/nacosports:- 8848:8848- 9848:9848environment:- PREFER_HOST_MODEhostname- MODEstandalone- SPRING_DATASOURCE_PLATFORMmysql- MYSQL_SERVICE_HOSTncc-mysql- MYSQL_SERVICE_DB_NAMEnacos- MYSQL_SERVICE_PORT3306- MYSQL_SERVICE_USERnacos- MYSQL_SERVICE_PASSWORDnacos2024- MYSQL_SERVICE_DB_PARAMcharacterEncodingutf8connectTimeout1000socketTimeout3000autoReconnecttrueuseUnicodetrueuseSSLfalseserverTimezoneAsia/ShanghaiallowPublicKeyRetrievaltrue- NACOS_AUTH_ENABLEtrue- NACOS_AUTH_IDENTITY_KEY2222- NACOS_AUTH_IDENTITY_VALUE2xxx- NACOS_AUTH_TOKENSecretKey012345678901234567890123456789012345678901234567890123456789depends_on:ncc-mysql:condition: service_healthynetworks:- ncc-dockerncc-redis:container_name: ncc-redisrestart: unless-stoppedimage: redis:7.2privileged: truevolumes:- /data/ncc/redis:/dataports:- 6379:6379environment:- TZAsia/Shanghainetworks:- ncc-dockercommand: [redis-server, --requirepass, redis2024,--appendonly,yes]networks:ncc-docker:driver: bridgeexternal: false13启动服务
在包含docker-compose.yml文件的目录中打开终端运行以下命令来启动服务
sudo docker-compose up -d 14发现nacos起不了查看一下日志
sudo docker logs ncc-nacos 15发现启动的脚本找不到查看一下挂载路径 16确实是没有解决办法先启动一个临时不挂载的容器把文件拷贝到宿主主机
sudo docker-compose down 17修改docker-compose.yml把volumes注释掉
sudo vi docker-compose.yml 18再启动服务
sudo docker-compose up -d 确实是启动成功了然后把容器/home/nacos拷贝到本地/data/ncc/nacos/
sudo docker cp ncc-nacos:/home/nacos /data/ncc/nacos 19关闭服务并且去掉刚才volumes注释
sudo docker-compose down
sudo vi docker-compose.yml 20重新启动服务
sudo docker-compose up -d
21检查mysql服务是否正常
sudo docker exec -it ncc-mysql mysql -uroot -pmysql2024 22检查redis服务是否正常
sudo docker exec -it ncc-redis redis-cli 23检查nacos是否正常
sudo docker logs ncc-nacos 查看报错是因为数据库没有建好 https://raw.githubusercontent.com/alibaba/nacos/develop/distribution/conf/mysql-schema.sql 将mysql-schema.sql下载并上传到服务器上面 然后执行SQL运行并查看数据库表是否存在
sudo docker exec -i ncc-mysql mysql -uroot -pmysql2024 nacos ./mysql-schema.sql
sudo docker exec -it ncc-mysql mysql -uroot -pmysql2024 再查看nacos日志说明已经启动成功 进行访问http://47.108.195.246:8848/nacos/
账号nacos
密码nacos OK完成