当前位置: 首页 > news >正文

windows系统下docker desktop创建容器指定ip

 方式一:创建自定义网络

# 创建自定义网络并指定子网
docker network create --subnet=172.20.0.0/16 mysql-network

启动容器

docker run -d \--name mysql1 \--network mysql-network \--ip 172.20.0.10 \-e MYSQL_ROOT_PASSWORD=root123 \-p 3306:3306 \mysql:8.0

方式二:使用docker compose文件方式

version: '3.7'services: mysql1:user: rootimage:  mysql:8.0container_name: mysql1ports:- 3306:3306volumes:- D:/docker/app9/mysql1/data:/var/lib/mysql- D:/docker/app9/mysql1/my.cnf:/etc/my.cnfenvironment:MYSQL_ROOT_PASSWORD: 2023TZ: Asia/ShanghaiLANG: C.UTF-8healthcheck:test: ["CMD", "mysqladmin", "ping", "-p2023","--protocol","tcp"]deploy:replicas: 1restart_policy:condition: on-failure #on-failureresources:limits:cpus: '8'memory: 2Gcommand: --default-authentication-plugin=mysql_native_password --character-set-server=utf8mb4 --collation-server=utf8mb4_german2_cinetworks:mysql-net:ipv4_address: 172.25.0.10mysql2:user: rootimage:  mysql:8.0container_name: mysql2ports:- 3307:3306volumes:- D:/docker/app9/mysql2/data:/var/lib/mysql- D:/docker/app9/mysql2/my.cnf:/etc/my.cnfenvironment:MYSQL_ROOT_PASSWORD: 2023TZ: Asia/ShanghaiLANG: C.UTF-8healthcheck:test: ["CMD", "mysqladmin", "ping", "-p2023","--protocol","tcp"]deploy:replicas: 1restart_policy:condition: on-failure #on-failureresources:limits:cpus: '8'memory: 2Gcommand: --default-authentication-plugin=mysql_native_password --character-set-server=utf8mb4 --collation-server=utf8mb4_german2_cinetworks:mysql-net:ipv4_address: 172.25.0.20networks:mysql-net:driver: bridgeipam:config:- subnet: 172.25.0.0/16

启动服务

# 启动服务
docker-compose up -d

查看状态

# 查看容器状态
docker-compose ps# 查看日志
docker-compose logs mysql1
docker-compose logs mysql2# 查看网络
docker network ls

停止和清理

# 停止服务
docker-compose down# 停止并删除数据卷
docker-compose down -v# 重新启动
docker-compose up -d

检查IP

# Linux系统命令
# 检查容器的 IP 地址
docker inspect mysql1 | grep IPAddress
docker inspect mysql2 | grep IPAddress# Windows 等效命令
# 使用 findstr 代替 grep
docker inspect mysql1 | findstr "IPAddress"
# 或者更精确的查找
docker inspect mysql1 | findstr "IPAddress"# 直接获取 IP 地址
docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' mysql1
docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' mysql2# 查看容器的所有网络信息
docker inspect mysql1
# 或者使用更简洁的方式
docker container inspect mysql1 --format='{{.Name}} - {{.NetworkSettings.Networks.mysql-cluster_mysql-net.IPAddress}}'
完整的排查步骤(Windows 版本)# 1. 检查容器状态
docker ps# 2. 获取容器 IP 地址
docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' mysql1
docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' mysql2# 3. 检查网络配置
docker network ls
docker network inspect mysql-cluster_mysql-net# 4. 检查端口映射
docker port mysql1
docker port mysql2# 5. 测试容器内部连接
docker exec mysql1 mysql -uroot -proot123 -e "SELECT 1;"
docker exec mysql2 mysql -uroot -proot123 -e "SELECT 1;"# 6. 检查用户权限
docker exec mysql1 mysql -uroot -proot123 -e "SELECT user, host, plugin FROM mysql.user;"
docker exec mysql2 mysql -uroot -proot123 -e "SELECT user, host, plugin FROM mysql.user;"

http://www.dtcms.com/a/548739.html

相关文章:

  • 微网站建设费用预算旅游网站开发的需求
  • Ionic + Angular 跨端实战:用 Capacitor 实现相机拍照功能并适配移动端
  • Python 爬虫:从基础到实战的完整指南
  • Angular【http服务端交互】
  • Angular【核心特性】
  • 做seo前景怎么样郑州企业网站优化多少钱
  • 华为 USG 防火墙 NAT 配置
  • uni-app App更新升级前端实现
  • 数据通信领域的专业认证——华为数通认证
  • JavaSE基础——第十二章 集合
  • iis发布网站页面出问题网上服务平台社保
  • 基于C语言上,面向对象语言:C++基础(学完C语言后再看)
  • windows npm打包无问题,但linux npm打包后部分样式缺失
  • npm install命令介绍
  • 人机交互与网页开发
  • p2p理财网站建设新浪云怎么做自己的网站
  • 手机分销网站wordpress视频上传不
  • 健身俱乐部|基于Java+Vue的健身俱乐部管理系统(源码+数据库+文档)
  • linux服务器升级显卡驱动(笔记)
  • 一个DevExpress的Docx文件处理的Bug的解决
  • Ubuntu(④Mysql)
  • Docker 拉取配置教程:解决镜像拉取连接超时问题
  • 开始改变第六天 MySQL(1)
  • 电脑网站自适应怎么做企业型网站建设怎样收费
  • 阿里培训网站建设杭州网站制作模板
  • Rust 所有权系统:如何为内存安全保驾护航
  • HarmonyOS WindowExtension深度解析:构建跨窗口交互的创新体验
  • PDF导出服务
  • 20251030在AIO-3576Q38开发板的Android14下确认TF卡
  • 《模仿人类皮肤层与环层小体的社交交互机器人皮肤》2024 IEEE/ASME TMECH 论文解读