docker打包镜像并迁移:如何从A服务器打包docker镜像到B服务器上容器中运行

1.在A服务器上,查看docker镜像

python 复制代码
docker images

会显示当前的服务器上已有的镜像

2.在A服务器上,将所需要的镜像打包

python 复制代码
docker save -o shuai_docker.tar xxx(镜像名):vxx(镜像版本)

会出现:xxxxx:Loading layer =========\> xxkB/xxkB字样

3.将shuai_docker.tar从A服务器传到B服务器

4.在B服务器上确认是否有docker权限(前置工作)

4.1 查看现有docker用户:grep docker /etc/group --->可以看自己有没有docker权限

4.2 如果没有,给自己添加docker权限(前提是有sudo权限):sudo usermod -aG docker shuai(服务器B上的你的用户名)

5.导入docker镜像文件

python 复制代码
docker load --input xx/xx/shuai_docker.tar

会出现:xxxxx:Loading layer =========\> xxkB/xxkB

Loaded image: xxx(镜像名):vxx(镜像版本)

字样

6.查看镜像是否导入成功

docker images 或 docker images -a

7.新建container容器运行该镜像

docker run
--gpus all --------------------->代表可以使用B服务器中的所有GPU,如果不写,就不可以使用B服务器上的GPU,如果B服务器上有8个GPU,写--gpus 3,4,5,表示在docker中可以使用B服务器的3,4,5号GPU
-it --------------------------------------------> 交互式开发选项
-p [宿主机端口(B服务器)]:10024 ------------------------------------->容器端口为10024固定,宿主机端口随便写;此参数方便之后远程调试
--ipc=host ------------------------->标志在两个容器间共享内存。例如:设置两个docker容器,一个作为用于数据保存在内存中的服务器,另一个作为用于访问该数据的客户端。
--shm-size=8gb ----------------------------->设置共享内存的大小:默认64M,比如B服务器内存为64G,这里就可以设置为8G
--env='DISPLAY' --------------->将主机的显示环境变量共享到容器
--volume="tmp/.X11-unix:/tmp/ .X11-unix:rw" ------------>可调用宿主机图形界面
-v xxx/code(B服务器中):xxx/code(docker中) ---------> 宿主机地址映射到docker中地址
-v xxx/data(B服务器中):xxx/data(docker中) ----------> 宿主机地址映射到docker中地址

--name your_name(给容器起个名字)---------------->container容器名字
xxx(镜像名):vxx(镜像版本) -------------->容器选用的镜像image

/bin/bash

docker run后会自动启动该docker

8.其他指令

停止:docker stop shuai_docker

启动:docker start shuai_docker
挂载:docker attach shuai_docker

退出:exit

查看:docker ps -a

重命名:docker rename shuai_docker(旧名字) liushuai_docker(新名字)

删除:docker rm shuai_docker

在docker中安装新的环境:pip install

这里有个前置条件是:docker开启了ssh服务

vscode连接docker:

1.先启动docker

2.点击vscode界面左下角的xxx按钮,在弹出的界面中间上方点击"Attach to Running Container"

3.输入/shuai_docker,选择,输入密码

相关推荐
天诰5 小时前
SA-K-11 检索会消失吗与四个未解问题
java·服务器·人工智能·python·机器学习·ai编程
陈希1236 小时前
Linux 防火墙配置实战:firewalld、iptables 与云安全组
linux·运维·服务器
女神下凡7 小时前
芯参谋(95):嵌入式文件系统_开发指南
linux·服务器·arm开发·驱动开发·设计规范
@兽血沸腾7 小时前
Windows系统安装Jenkins部署应用至远程Windows服务器操作指南
运维·服务器·jenkins
讯捷蓝达13 小时前
戴尔R720xd服务器卡死在 “Configuring Memory...Done“,换了内存还是卡?问题根本不在内存
运维·服务器
数字新视界15 小时前
动环监控信创适配在智能机房管理中的应用价值与未来展望
大数据·服务器·数据库·动环监控系统·动力与环境监控系统
爱和冰阔落15 小时前
【Linux网络】TCP 服务器如何并发处理多个客户端?从 fork、僵尸进程到双重 fork
linux·运维·服务器·网络
lisanmengmeng16 小时前
alertmanger 标签 rules 打上分组标签
linux·运维·服务器
Android系统攻城狮16 小时前
Linux FFmpeg深度解析之av_write_frame调用流程与实战(三十三)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频
上火的金鱼妹17 小时前
k8s生产实际问题排查(网关,数据库读写等)
运维·服务器