【记录】Docker|Ubuntu Docker 修改dockerfile换源、主机共享网络解决apt update 失败

这篇具有很好参考价值的文章主要介绍了【记录】Docker|Ubuntu Docker 修改dockerfile换源、主机共享网络解决apt update 失败。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文测试环境:虚拟机 Ubuntu20.04 Docker20

1 修改dockerfile

dockerfile第二行后面加如下内容,一键换源:

RUN sed -i s:/archive.ubuntu.com:/mirrors.tuna.tsinghua.edu.cn/ubuntu:g /etc/apt/sources.list
RUN cat /etc/apt/sources.list
RUN apt-get clean
RUN apt-get -y update --fix-missing

参考:Docker 容器无法联网 apt update 失败 解决

2 修改构建选项与主机共享网络

如果换了源还是没网络,可以尝试使docker和主机的网络共享。

注意,build和run时共享网络时添加的参数是不一致的。并且,如果在build时添加了参数、但在run时没添加,那么创建的容器的网络还是不会与主机共享;同理,在run时添加、在build时没添加,那么创建的容器会与主机共享,但是build image的过程中的网络不会与主机共享。

添加的具体方式如下。

  1. build的时候:添加--network=host参数:
sudo -S docker build --network=host -t 【image的名字】 .

其中【image的名字】是自定义的,build的时候会根据参数所在的文件夹(例如sudo -S docker build --network=host -t 【image的名字】 .的参数是.,即当前目录)下的dockerfile生成image

  1. run的时候:添加--net=host参数:
sudo docker run --net=host -it 【image的名字】 /bin/bash

其中【image的名字】是现有的image,可以通过sudo docker images查看所有的image的名字,然后从中选一个,去run。run的时候会基于image生成一个容器container

加了net=host后会使得创建的容器与主机共享网络,在进入命令行时名称显示为主机的名称而不是一串id,如root@shan:/#

参考:文章来源地址https://www.toymoban.com/news/detail-538726.html

  1. Docker——容器内 apt-get update失败解决办法
  2. Docker—— --net=host参数改变容器网络模式
  3. docker build以及docker run时使用host网络的方法

到了这里,关于【记录】Docker|Ubuntu Docker 修改dockerfile换源、主机共享网络解决apt update 失败的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ubuntu系统(10):使用samba共享linux主机中文件

    目录 一、samba安装步骤 1、Linux主机端操作 (1)安装sabma (2)修改samba配置文件 (3)为user_name用户设置samba访问的密码 (4)重启samba服务 2、Windows端 二、使用 1、代码无法跳转(可能存在) 2、创建快速访问网络(非必要) 特别说明 我现在用的是MobaXterm远程linux主机,如果

    2024年01月19日
    浏览(44)
  • VMWare ubuntu共享宿主机window11文件夹

    找到需要共享的文件夹,比如我需要share文件夹共享到虚拟机中 点击“ 共享 ”文件夹属性,如果找不到“共享”选项卡,需要在下面的“ 选项 ”中 注意勾选“ 使用共享向导(推荐) ”,如果 已经勾选,则先取消勾选,然后关闭页面后重新去勾选,以便共享选项卡会出现

    2024年02月19日
    浏览(55)
  • docker与宿主机共享内存通信

    docker中的进程要与宿主机使用共享内存通信,需要在启动容器的时候指定 “–ipc=host” 选项。然后再编写相应的共享内存的程序,一个跑在宿主机上,另一个跑在docker上面。 shm_data.h shm_slave.c makefile shm_data.h shm_master.c makefile Dockerfile 运行时需要先下载docker,获取支持c语言编译

    2024年02月07日
    浏览(46)
  • docker容器共享宿主机环境(目录挂载)

    一、背景介绍 如果开发的服务均需要将打成docker镜像,可是随着服务越来越多,镜像也越来越多。每次制作镜像的时候都需要将依赖打进容器,这样一个jre的环境就是100多M。有一天突发奇想,容器能不能共用宿主机的环境?这样每次打镜像时体积就会少不少。 二、测试 我们

    2024年02月09日
    浏览(62)
  • VMware的ubuntu虚拟机与windows主机之间文件共享,数据互通【linux】

    今天来记录一下我找到的ubuntu虚拟机与windows主机之间 【文件互通】【共享数据】 的方法,很简单,供广大网友参考。 在该文件夹中就会看到你共享的windows主机中的文件夹,你可以在你共享的文件夹中放入你在 ubuntu虚拟机中的文件数据 ,也可以在 windows主机 中将需要给 u

    2024年02月16日
    浏览(44)
  • 【最新可用】VMware中ubuntu与主机window之间使用共享文件夹传输大文件

    (1)虚拟机关机情况下,创建一个共享文件夹 (2)ubuntu中挂载共享文件夹 1、如果之前已经挂载 hgfs,先取消挂载 2、重新使用以下命令挂载 uid 和 gid 在home目录输入id 命令查询,如果报错 use the ‘nonempty’ mount option则使用下面命令 以上设置仅暂时有效,重启之后又找不到共

    2024年02月12日
    浏览(49)
  • ubuntu修改主机名和用户名

    参考文章: https://blog.csdn.net/fkmmmm/article/details/127333212 一、修改主机名 2、 3、 二、修改用户名 1、修改所有原用户名(如果文件内没有原用户名则不用改 2、 3、注意:只修改用户名!后面的全名、目录等不要动! 4、 5、输入sudo mv /home/olduser1 /home/newuser2更改原文件的名称

    2024年02月12日
    浏览(47)
  • 修改docker容器端口映射到主机的方法

    如何修改已经创建好的容器的映射端口 我们都知道docker在创建时可以指定端口映射,但是容器一旦创建好,就没有命令支持直接修改映射端口。如果我们已经对容器里面的内容已经做了一定更改,不能删除进行重建,怎么办呢?通常间接的办法是,保存镜像,再创建一个新的

    2024年02月14日
    浏览(58)
  • 修改docker中共享内存(shm)大小

    方法一:创建容器时指定shm的大小 那么,应该怎样正确设置共享内存的大小呢?其实很简单,只需要我们在启动容器时加一个参数 --shm-size 即可,如: 方法二:修改配置文件 获取容器id 2.备份配置文件 3.关闭docker 4.修改配置文件ShmSize的大小(自行计算,不要超过宿主机的共

    2024年02月16日
    浏览(78)
  • ubuntu修改用户名、主机名、主文件夹名、登录名、密码(完整版)

    上图中@前面的是用户名,@后面的为主机名。 1.修改用户密码: 输入两次新密码之后即可修改完成. 2.修改主机名: 切换到root用户 修改自己喜欢的主机名 将第二行后面的名字修改成自己的主机名。主机名修改完成 3.修改用户名、住文件夹名、登录名 为自己 的用户添加 gym

    2023年04月16日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包