当你docker有一定基础后, 很多时候你需要去部署相关服务与环境,这时你要不就要把镜像上传打docker镜像仓库中,但仓库再外网,很多时候国内服务器都是无法连接到该项目内,这时就需要其他方式,比如直接把本地镜像成.tar
文件。 通过 docker load -i xx.tar
加载 Docker 镜像
镜像打包成.tar
使用docker save
命令:运行docker save
命令,后面跟上你想要打包的镜像名
和标签
,以及输出文件的路径和名称
。
如果你没有指定标签,Docker会默认使用latest标签。
1 | docker save -o <输出文件名>.tar <镜像名>:<标签> |
例如,如果你想要打包名为myimage,标签为v1.0的镜像,并保存为myimage_v1.0.tar文件,你可以运行:
1 | docker save -o myimage_v1.0.tar myimage:v1.0 |
加载镜像.tar
使用docker load命令:运行docker load
命令,并通过-i
或--input
选项指定.tar
文件的路径。
如果你没有指定-i或–input,docker load会尝试从标准输入(stdin)读取数据,这通常不是你所想要的,除非你正在通过管道传递数据。
1 | docker load -i <输入文件名>.tar |
执行命令后,Docker会开始加载.tar文件,并在完成后显示加载的镜像的列表(尽管通常只显示一个镜像ID和状态信息,如“Loaded image: myimage:v1.0”)。
验证镜像:为了验证镜像是否已成功加载,你可以使用docker images
命令来列出本地的所有镜像。你应该能在列表中看到刚刚加载的镜像。
运行镜像:一旦镜像被加载,你就可以像使用其他任何本地镜像一样来运行它了。例如,如果你加载了一个Web服务器镜像,你可以使用docker run
命令来启动一个容器实例。
编写自动化部署命令
当你要环境安装级相关部署时,一个还好,但如果多个或者要项目更好的扩展,自动化部署时必要的。
下面举一个kkfileview自动化部署例子(在blog上有将相关内容可以去查看)
install.sh
内文件。 如果要运行: 去到文件所在目录,执行./install.sh
1 |
|
一次性执行判断所有相关内容,让复杂安装简单化,使用性更高。
docker加速镜像源配置
mac 配置
安装了Docker for Mac 配置步骤:
在任务栏点击 Docker Desktop 应用图标
-> Perferences,在左侧导航菜单选择 Docker Engine
,在右侧输入栏编辑 json 文件
。
将 对应的加速镜像源 加到"registry-mirrors"
的数组里,点击 Apply & Restart按钮
,等待Docker重启并应用配置的镜像加速器。
Ubuntu/CentOS 配置
配置镜像加速器
针对Docker客户端版本大于 1.10.0 的用户
您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器
1 | sudo mkdir -p /etc/docker |
Windows 配置
针对安装了Docker for Windows的可 配置步骤:
在系统右下角托盘图标内右键菜单
选择 Settings
,打开配置窗口后左侧导航菜单选择 Docker Daemon
。编辑窗口内的JSON串
,填写下方加速器地址:
1 | { |
编辑完成后点击 Apply
保存按钮,等待Docker重启并应用配置的镜像加速器。
注意:Docker for Windows
和 Docker Toolbox
互不兼容,如果同时安装两者的话,需要使用hyperv的参数启动
。
1 | docker-machine create --engine-registry-mirror=https://609ywpog.mirror.aliyuncs.com -d hyperv default |
Docker for Windows
有两种运行模式,一种运行Windows相关容器
,一种运行传统的Linux容器
。同一时间只能选择一种模式运行。
加速镜像源
1 | https://hub.uuuadc.top/ |