docker-compose yaml指定具体容器网桥ip网段subnet;docker创建即指定subnet;docker取消自启动

本文主要是介绍docker-compose yaml指定具体容器网桥ip网段subnet;docker创建即指定subnet;docker取消自启动,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、docker-compose yaml指定具体容器网桥ip网段subnet

docker-compose 启动yaml有时可能的容器网段与宿主机的ip冲突导致宿主机上不了网,这时候可以更改yaml指定subnet

宿主机内网一般是192**,这时候容器可以指定172*

version: '3.9'
services:coredns:image: coredns/coredns:1.10.0container_name: corednsports:- 53:53/udpnetworks:mynetwork:ipv4_address: 172.28.0.4volumes:- ./coredns/hostsfile:/etc/coredns/hostsfile- ./coredns/Corefile:/Corefilenetworks:mynetwork1:driver: bridgeipam:driver: defaultconfig:- subnet: 172.28.0.0/16gateway: 172.28.0.1

案例:
在这里插入图片描述
subnet 关键字设置了容器的网桥 IP 网段为 192.168.0.0/16,其中 ipv4_address 指定了容器的 IP 地址为 192.168.0.2。

version: '3'
services:myservice:image: <image>networks:mynetwork:ipv4_address: 192.168.0.2networks:mynetwork:driver: bridgeipam:config:- subnet: 192.168.0.0/16

2、docker指定subnet

1)先创建自定义网络

docker network create --subnet=172.18.0.0/16 shadownet

2)运行docker指定具体net

docker run --net shadownet  -p 6008:6008 registry.cn-hangzhou.aliyuncs.com/fastgpt_docker/m3e-large-api

3)查看容器ip
可以看到分到的ip是指定的172.18网段下面ip **0.2

docker inspect 0418bea8c6aecd3af266eb1

在这里插入图片描述

3、上面2把转出docker compose yml文件运行

1)首先相同网段名会冲突可以先删除前面的docker network rm shadownet;也可以换个名称和网段
2)运行指定yml:docker-compose -f C:\Users\loong\Downloads\subnet.yml up

subnet.yml

version: '3'
services:myservice:image: registry.cn-hangzhou.aliyuncs.com/fastgpt_docker/m3e-large-apiports:- 6008:6008networks:- shadownetnetworks:shadownet:driver: bridgeipam:config:- subnet: 172.18.0.0/16

在这里插入图片描述

3、docker取消自启动

https://stackoverflow.com/questions/37599128/docker-how-do-you-disable-auto-restart-on-a-container

–restart=always 下面更改

docker update --restart=no <container_name_or_id>

查看是否取消成功

docker inspect -f '{{.HostConfig.RestartPolicy.Name}}' <container_name_or_id>

在这里插入图片描述

这篇关于docker-compose yaml指定具体容器网桥ip网段subnet;docker创建即指定subnet;docker取消自启动的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/907070

相关文章

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

Python一次性将指定版本所有包上传PyPI镜像解决方案

《Python一次性将指定版本所有包上传PyPI镜像解决方案》本文主要介绍了一个安全、完整、可离线部署的解决方案,用于一次性准备指定Python版本的所有包,然后导出到内网环境,感兴趣的小伙伴可以跟随... 目录为什么需要这个方案完整解决方案1. 项目目录结构2. 创建智能下载脚本3. 创建包清单生成脚本4

python获取指定名字的程序的文件路径的两种方法

《python获取指定名字的程序的文件路径的两种方法》本文主要介绍了python获取指定名字的程序的文件路径的两种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 最近在做项目,需要用到给定一个程序名字就可以自动获取到这个程序在Windows系统下的绝对路径,以下

SpringBoot实现不同接口指定上传文件大小的具体步骤

《SpringBoot实现不同接口指定上传文件大小的具体步骤》:本文主要介绍在SpringBoot中通过自定义注解、AOP拦截和配置文件实现不同接口上传文件大小限制的方法,强调需设置全局阈值远大于... 目录一  springboot实现不同接口指定文件大小1.1 思路说明1.2 工程启动说明二 具体实施2

MyBatis ParameterHandler的具体使用

《MyBatisParameterHandler的具体使用》本文主要介绍了MyBatisParameterHandler的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录一、概述二、源码1 关键属性2.setParameters3.TypeHandler1.TypeHa

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

C#下Newtonsoft.Json的具体使用

《C#下Newtonsoft.Json的具体使用》Newtonsoft.Json是一个非常流行的C#JSON序列化和反序列化库,它可以方便地将C#对象转换为JSON格式,或者将JSON数据解析为C#对... 目录安装 Newtonsoft.json基本用法1. 序列化 C# 对象为 JSON2. 反序列化

Spring创建Bean的八种主要方式详解

《Spring创建Bean的八种主要方式详解》Spring(尤其是SpringBoot)提供了多种方式来让容器创建和管理Bean,@Component、@Configuration+@Bean、@En... 目录引言一、Spring 创建 Bean 的 8 种主要方式1. @Component 及其衍生注解

Java 中编码与解码的具体实现方法

《Java中编码与解码的具体实现方法》在Java中,字符编码与解码是处理数据的重要组成部分,正确的编码和解码可以确保字符数据在存储、传输、读取时不会出现乱码,本文将详细介绍Java中字符编码与解码的... 目录Java 中编码与解码的实现详解1. 什么是字符编码与解码?1.1 字符编码(Encoding)1

MySQL 数据库表操作完全指南:创建、读取、更新与删除实战

《MySQL数据库表操作完全指南:创建、读取、更新与删除实战》本文系统讲解MySQL表的增删查改(CURD)操作,涵盖创建、更新、查询、删除及插入查询结果,也是贯穿各类项目开发全流程的基础数据交互原... 目录mysql系列前言一、Create(创建)并插入数据1.1 单行数据 + 全列插入1.2 多行数据