linux离线安装docker(保险操作) - Go语言中文社区

linux离线安装docker(保险操作)


之前都是在有网的情况下进行操作,也没觉得linux安装东西有啥难度,这次要在服务器上部署项目了,没有网可以用,导致安装docker一直错误,这几天踩了好多坑,大家操作的时候一定要谨慎,我推荐一套最为稳妥的操作。

1.挂载centOS的镜像为本地yum源

1.1下载centOS

这里使用的镜像是完整版的,里面有yum仓库

阿里镜像:https://mirrors.aliyun.com/centos/7/isos/x86_64/

以下操作建议使用工具操作(Xshell和xftp)

下载完毕之后

1.2将.ios文件放到linux下的/home,目录随便

创建挂载点并挂载镜像文件,命令如下:

[root@localhost ~]# mkdir /media/cdrom 					#创建挂载点的目录
[root@localhost ~]#  mount -o  loop /home/CentOS-7-x86_64-Everything-1908.iso   /media/cdrom
[root@localhost ~]# df -HT			#查看镜像是否挂载成功
备注: -o是参数,loop是把一个文件当成硬盘分区mount挂着到目录

挂载成功

修改yum源的配置文件

[root@localhost ~]# cd /etc/yum.repos.d/		
[root@localhost yum.repos.d]# ls
[root@localhost yum.repos.d]# mkdir ./bak			
[root@localhost yum.repos.d]# mv    ./*.repo   ./bak/
[root@localhost yum.repos.d]# cp ./bak/CentOS-Media.repo  .
[root@localhost yum.repos.d]# vim  CentOS-Media.repo 		#修改配置文件,内容如下图
# CentOS-Media.repo
#
#  This repo can be used with mounted DVD media, verify the mount point for
#  CentOS-7.  You can use this repo and yum to install items directly off the
#  DVD ISO that we release.
#
# To use this repo, put in your DVD and use it with the other repos too:
#  yum --enablerepo=c7-media [command]
#  
# or for ONLY the media repo, do this:
#
#  yum --disablerepo=* --enablerepo=c7-media [command]

[c7-media]
name=CentOS-$releasever - Media
#baseurl=file:///media/CentOS/
baseurl=file:///media/cdrom/
#baseurl=file:///media/cdrecorder/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

清除缓存

[root@localhost yum.repos.d]# yum clean all 
[root@localhost yum.repos.d]# yum repolist

这一步结束说明已经挂载成功,不过这里面并没有docker、redis、nginx等所需要安装的东西

2.离线安装docker

准备工作,需要一台联网的机器(里面带一个新的虚拟机,这个只是为了保险)

接下来是个人电脑的操作

2.1通过命令行下载完整的依赖

yum install --downloadonly --downloaddir=/docker/yumrepo docker 
yum install --downloadonly --downloaddir=/docker/yumrepo createrepo 

#--downloadonly只下载不安装
#/docker/dockerRpm指定路径,不指定情况,默认放在缓存/var/cache/yum下面还有,可能路径不同
#docker 要下载的东西
#createrepo 构建本地yum源使用的
#createrepo 只下载是为了在服务器上可以使用createrepo命令(只是保险操作)

2.2构建本地yum源

创建一个仓库,将刚刚下载的所有的依赖放进去(这个时候可以把需要的东西都下了放进去,也可以在后面在下载,一样的)
mkdir /yumrepo
安装createrepo软件
yum -y install createrepo
确保所有依赖包全部上传至仓库文件夹后,执行自建仓库命令
createrepo /yumrepo
该文件夹下会生成一个repodata目录,记录该仓库中所有软件包的信息。此时该文件夹即可用于移植
中,移植后只需增加一个配置文件,令yum可识别到该仓库,即可使用。
在yum的仓库配置目录/etc/yum.repos.d/下创建docker.repo配置文件指向本地仓库的路径、
[docker]
name=docker  
baseurl=file:///yumrepo
#baseurl:仓库路径,由于是放在本地的只能用file协议而不是http
enabled=1  #enabled:[1 or 0],1为开启该仓库,0为关闭该仓库
gpgcheck=0  #不做gpg检查
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Centos-7 
通过命令查看仓库状态,若配置无误,可以看到创建的仓库已经被加载
yum repolist
注:若此时无外网环境,默认的yum源都不可用,查看仓库时会报错,此时将/etc/yum.repos.d/目录下
件删除即可。(注意先备份)

2.3移植仓库到服务器

1). 将创建好的仓库文件夹/yumrepo,上传或拷贝至客户内网机中
2). 依照步骤三中的4),在客户机中创建.repo配置文件
3). 通过命令查看仓库状态,若配置无误,可以看到创建的仓库已经被加载
yum repolist
至此,已在客户内网机中建立起本地yum源,可用于安装所需依赖包。
 
 
操作完成后就可以使用yum install命令下载了
每次在仓库添加完依赖之后请进行操作
清理本地YUM缓存和重建
createrepo /yumrepo
yum clean all
yum makecache

 

 

3.另一种操作

下载完.ios文件后进行解压,然后进行第二部操作,将.ios解压后得到的所有依赖(/Packages目录下)扔到本地建的仓库中/yumrepo。

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_41534115/article/details/105839363
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-06-28 00:11:02
  • 阅读 ( 1212 )
  • 分类:Linux

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢