【开发问题记录】启动某个服务时请求失败(docker-componse创建容器时IP参数不正确)

简介: 【开发问题记录】启动某个服务时请求失败(docker-componse创建容器时IP参数不正确)

一、问题描述

1.1 产生原因

因为我是拉取的别人的项目,所以需要在本地配置项目需要的环境,在本地虚拟机中需要使用docker 进行服务的部署,我当时的流程是这样的,将必要的软件安装好后(就是docker和docker-componse),然后上传docker-compose.yml文件,里面有容器的启动命令,包含了各种参数的配置,如下,当时我不知道seata的配置中还有ip的配置,这个ip跟我的虚拟机的ip并不一致,所以就导致了后面的问题



1.2 产生问题

我在启动某个服务的时候,这个服务一直请求失败,我通过查看它的运行日志找到了问题所在

报错信息:

10:30:54.261-[a2c9fe491352][sys]-ERROR 7 ---[.naming.updater]com.alibaba.nacos.client.naming
request:/nacos/v1/ns/instance/list failed,servers:[192.168.150.101:8848],code:500,msg:connect timed out
  • 查看日志
docker logs -f [容器名]

如下图所示,对应上面说到的IP错误,导致seata服务也请求失败



二、问题解决

当知道是docker-compose.yml文件的配置问题就很好解决了

2.1 找到自己的docker-compose.yml文件

  • 如下是我的文件所在地:
cd /usr/local/src

2.2 重新编辑docker-compose.yml文件

  • 这里我编辑的是seata的配置,改成自己虚拟机的IP
seata:
    image: seataio/seata-server
    container_name: seata
    ports:
      - "8099:8099"
      - "7099:7099"
    environment:
      SEATA_IP: 192.168.113.128
    volumes:
      - "./seata:/seata-server/resources"
    networks:
      - new
    restart: always
    depends_on:
      - mysql
      - nacos

2.3 通过docker-componse重新运行docker-compose.yml文件

docker-compose up -d

2.4 重新启动docker容器

systemctl restart docker

2.5 查看seata信息

docker inspect seata
  • 可以发现已经成功


相关文章
|
9月前
|
Linux 网络安全 Docker
盘古栈云,创建带ssh服务的linux容器
创建带ssh服务的linux容器
463 146
|
Docker 容器
Docker run命令-p参数详解
本文介绍Docker端口映射的基础用法。通过`docker run -p <宿主机端口>:<容器端口>`实现端口映射,例如`-p 5000:80`将宿主机5000端口映射到容器80端口,外部访问宿主机5000端口时流量会转发至容器内部的80端口。示例命令中,`-d`用于后台运行,`--restart=always`确保容器自动重启,`--name`指定容器名称。部署完成后可通过`http://服务器IP地址:5000`验证服务是否正常运行。
1405 57
|
11月前
|
存储 持续交付 Docker
Docker:颠覆传统开发的轻量级容器革命
Docker:颠覆传统开发的轻量级容器革命
|
Kubernetes Docker 容器
Kubernetes与Docker参数对照:理解Pod中的command、args与Dockerfile中的CMD、ENTRYPOINT。
需要明确的是,理解这些都需要对Docker和Kubernetes有一定深度的理解,才能把握二者的区别和联系。虽然它们都是容器技术的二个重要组成部分,但各有其特性和适用场景,理解它们的本质和工作方式,才能更好的使用这些工具,将各自的优点整合到生产环境中,实现软件的快速开发和部署。
604 25
|
存储 开发工具 开发者
揭秘 Microsoft.Docker.SDK:让容器开发更轻松的强大工具揭秘
随着云计算和容器技术的快速发展,`Docker` 已经成为容器化技术的事实标准。`Microsoft` 作为 `Docker` 的主要支持者和参与者,推出了 `Microsoft.Docker.SDK`,旨在帮助开发者更轻松地进行容器开发。本文将深入揭秘 Microsoft.Docker.SDK 的功能、使用方法以及它在容器开发中的应用。
415 13
|
Kubernetes 安全 数据安全/隐私保护
容器云服务是什么?
容器云基于容器技术,实现应用及其依赖的标准化封装,支持跨平台快速部署和高效管理。与传统虚拟机相比,容器共享宿主机操作系统内核,资源占用少、启动快,但隔离性稍弱。Docker Engine通过Dockerfile定义应用环境并生成容器镜像,适合单机场景;Kubernetes作为行业标准编排工具,支持自动扩缩容和服务发现,适用于大规模集群管理;OpenShift提供企业级全流程平台,满足合规要求;Rancher简化多云环境下的Kubernetes管理;CoreOS Tectonic专注于安全性,适用于高安全需求领域。容器云正朝着无服务器化、智能运维和边缘协同等方向发展。
1045 1
|
人工智能 监控 安全
容器化AI模型的安全防护:构建可信的AI服务
在AI模型广泛应用的背景下,容器化AI模型的安全防护至关重要。主要安全威胁包括数据窃取、模型窃取、对抗样本攻击和模型后门攻击等。为应对这些威胁,需采取多层次防护措施:容器安全(如使用可信镜像、限制权限)、模型安全(如加密、水印)、数据安全(如加密、脱敏)和推理安全(如输入验证、异常检测)。此外,利用开源工具如Anchore Engine、Falco和ART等,可进一步加强防护。遵循安全开发生命周期、最小权限原则和深度防御等最佳实践,确保AI服务的安全性和可信度。
|
NoSQL MongoDB 数据库
使用 docker 快速搭建开发环境的 mongodb 服务
本指南介绍如何使用 Docker 和 Docker Compose 部署 MongoDB 和 Mongo Express。首先,通过 Docker 命令分别启动 MongoDB(镜像 `mongo:7.0.14`)和 Mongo Express(镜像 `mongo-express:1.0.2-20-alpine3.19`),并配置环境变量确保两者能正确连接。接着,提供了一个 `docker-compose.yaml` 文件示例,包含 MongoDB 数据卷、健康检查及服务依赖配置,简化多容器管理。
2362 2
|
Linux Docker 容器
Linux 中停止 Docker 服务报 warning 导致无法彻底停止问题如何解决?
在 Linux 系统中,停止 Docker 服务时遇到警告无法彻底停止的问题,可以通过系统管理工具停止服务、强制终止相关进程、检查系统资源和依赖关系、以及重置 Docker 环境来解决。通过以上步骤,能够有效地排查和解决 Docker 服务停止不彻底的问题,确保系统的稳定运行。
1248 19
|
存储 Ubuntu 关系型数据库
《docker基础篇:7.Docker容器数据卷》包括坑、回顾下上一讲的知识点,参数V、是什么、更干嘛、数据卷案例
《docker基础篇:7.Docker容器数据卷》包括坑、回顾下上一讲的知识点,参数V、是什么、更干嘛、数据卷案例
315 13

热门文章

最新文章