当前位置:首页 > CN2资讯 > 正文内容

Windows Server 2012 内网 docker 内网搭建docker

2天前CN2资讯


适用场景

内网封闭网络,如大多数互联网公司办公环境。
无法连通外部的Linux发行版的软件源

资源配置

  • 一台连通互联网的电脑,操作系统建议使用任意Linux发行版为佳,如centos
  • 电脑已安装docker(windows可以安装桌面版)
  • 有一个大存储的U盘,至少100G以上
  • 内网环境允许外部存储导入

基本思路

  • 创建docker容器挂载路径
  • 容器中拉取外部网络源文件到挂载的路径
  • docker中部署本地仓库服务,验证通过后打包docker和挂载路径的文件,拷贝到U盘
  • U盘数据拷贝到内网,拉起docker挂载路径的文件,调试配置内网网络

与挂载镜像的本地仓库的区别

将镜像挂载为本地仓库,只能解决系统相关服务升级的问题,而无法安装官方提供的软件包。

当然内网源仍旧无法解决第三方软件包的安装。比如docker、nginx等。

整体配置步骤介绍

  • 创建一个docker容器作为本地yum或apt仓库
  • 创建的容器使用-v参数挂载宿主机本地的一个目录到容器内,这样可以防止容器移动宿主机时,打包镜像因为仓库太大而无法打包
  • 同步一个权威的外部源,如阿里源或者清华源(测试了下这两个源下载比较快)
  • 使用nginx或者其他网络方式将本地源暴露出来
  • 创建个客户端容器,使用本地仓库的源,测试拉取本地源是否成功
  • Linix下使用docker搭建Centos yum内网源

    使用docker的方式部署可以快速转移和防止部署时错误,建议使用docker部署。

    docker安装请参考:docker安装

  • 确定宿主机上存放仓库文件的位置,如/home/yumrepo
  • 确定容器内挂载的位置,因为是需要使用网络暴露出去,所以使用Linux默认的网络根目录,如/var/www/html/yumrepo
  • 创建容器,作为后台运行,此处默认使用centos7.8,如
  • docker run -tid –privileged=true –name=”repo_centos” -v /home/yumrepo:/var/www/html/yumrepo centos:7.8.2003 /usr/sbin/init
  • 进入容器后安装nginx 、createrepo及其他软件
  • rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm yum install -y yum-utils createrepo wget make cmake gcc gcc-c++ pcre-devel zlib-devel openssl openssl-devel net-tools vim nginx
  • 使用createrepo同步配置的网络源的仓库
  • createrepo -po /var/www/html/yumrepo/base/ /var/www/html/yumrepo/base/createrepo -po /var/www/html/yumrepo/extras/ /var/www/html/yumrepo/extras/createrepo -po /var/www/html/yumrepo/updates/ /var/www/html/yumrepo/updates/createrepo -po /var/www/html/yumrepo/epel/ /var/www/html/yumrepo/epel/
  • 使用nginx将仓库发布出去,具体nginx配置参考githhub中代码,此处设置为9090端口发布,仓库路径为/var/www/html/yumrepo
  • 其他centos7的主机更新yum源为此内网源后即可访问,内网源配置参考github中CentOS-Base.repo文件
  • 为了容器或宿主机重启后自动启动,需要设置如下
  • 宿主机: docker update –restart=always 容器ID(或者容器名)

    Linix下使用docker搭建Debian apt内网源

  • 确定宿主机上存放仓库文件的位置,如/home/aptrepo
  • 确定容器内挂载的位置,apt仓库的管理工具是apt-mirror,我们此容器内挂载和下载同步软件的目录也设置为/home/aptrepo
  • 创建容器,作为后台运行,此处默认使用debian:9,如
  • docker run -tid –privileged=true –name=”repo_debian” -v /home/aptrepo:/home/aptrepo debian:9 /sbin/init
  • 更换一个国内debian9的源(建议为http的),如阿里源,安装apt-mirror、nginx、systemd-sysv等
  • apt -y update;apt -y install apt-mirror nginx vim net-tools procps systemd-sysv

    5.设置apt-mirror的设置,配置文件为/etc/apt/mirror.list,配置内容参考github中的mirror.list文件

  • 执行同步命令(可选),会自动从官方源拉去最新的包。我们此处默认使用的是本地已拉取的包
  • apt-mirror
  • 将我们的aptrepo的mirror文件下的内容,挂载到/var/www/html/下
  • ln -sf /home/aptrepo/mirror/ /var/www/html/
  • 设置nginx文件,暴露端口此处设置为8080,仓库路径为/var/www/html/mirror/
  • 其他debian9的主机更新apt源为此内网源后即可访问,内网源配置参考github中sources.list.client文件
  • 为了容器或宿主机重启后自动启动,需要设置如下
  • 宿主机: docker update –restart=always 容器ID(或者容器名)

    代码构建

    上述第3步和第4部涉及的不足已经使用脚本实现并上传github,地址如下

  • centos
  • debian
    • 你可能想看:

      扫描二维码推送至手机访问。

      版权声明:本文由皇冠云发布,如需转载请注明出处。

      本文链接:https://www.idchg.com/info/29026.html

      分享给朋友:

      “Windows Server 2012 内网 docker 内网搭建docker” 的相关文章

      SSD测速全指南:高效评估固态硬盘性能的必备工具与技巧

      SSD测速的整体概述 在日常使用中,SSD(固态硬盘)作为一种新兴存储设备,其重要性逐渐提升。与传统的机械硬盘相比,SSD提供更快的读写速度和更好的性能体验。然而,SSD的表现并不是一成不变的,针对其性能的评估便成为了一个不可或缺的环节。今后我将带大家深入了解SSD测速的基本情况,帮助大家更好地理解...

      深入了解CN2 GIA VPS:选择更快稳定的虚拟专用服务器

      在现代互联网环境中,选择合适的虚拟专用服务器(VPS)至关重要。CN2 GIA VPS,则是个不错的选择。它基于中国电信的CN2 GIA国际精品网络,这一网络是中国电信下一代承载网络的高端产品,又被称为Chinatelecom Next Carrier Network- Global Interne...

      如何选择便宜的VPS:最佳性能与价格平衡的指南

      在谈论VPS之前,首先要弄清楚它究竟是什么。VPS,或称虚拟专用服务器(Virtual Private Server),是将一台物理服务器划分成多个虚拟服务器的技术。每个虚拟服务器都可以独立运行自己的操作系统,并且能够进行重新启动,这意味着你获得了一种与专用服务器相似的体验,但成本却比全功能的专用服...

      iHerb折扣攻略:轻松获取最佳优惠和值得购买的健康产品

      1.1 iHerb 平台简介 iHerb 是一个备受欢迎的在线购物平台,专注于健康和营养产品。我第一次接触 iHerb 是在寻找一些天然补品和有机食品的时候,发现这个网站不仅产品种类丰富,还提供了详细的产品信息和用户评价,帮助我做出明智的购买决策。无论是维生素、矿物质,还是植物提取物和美容护肤品,i...

      哪里注册.com域名便宜?最值得信赖的选择和建议

      了解.com域名的重要性 在互联网的世界里,.com域名是最常见的一种,几乎每个人都听说过它。对于一个初创企业或个人博客来说,拥有一个.com域名就像拥有了一张通行证,可以让你顺利进入这个复杂的市场。如果你还不太了解.com域名的定义,那它实际上是一个顶级域名(TLD),专为商业机构而设,这也使它在...

      Fuser软件:数据整合与管理的高效解决方案

      Fuser软件概述 在现代科技迅速发展的背景下,Fuser软件作为一款数据整合与管理工具,逐渐走入了人们的视野。Fuser的设计初衷是帮助用户有效处理和管理海量数据,使得信息的获取和使用变得更为高效。我首次接触Fuser时,便被其简洁的界面与强大的功能所吸引。了解这一软件的定义与背景,能够让我们更好...