docker实用操作 | 本地和容器共享当前目录 |

2023-12-21 23:08

本文主要是介绍docker实用操作 | 本地和容器共享当前目录 |,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

记录若干docker实用操作

docker实用操作

  • docker 关闭现有容器 - 然后重新进入容器
  • docker 拉取镜像 - 创建容器
  • 创建容器:本地 和 容器 共享 当前目录
    • docker 本地copy文件到容器(如果忘了共享目录会用到)
    • docker 给 容器 重命名
    • docker 删除容器


docker 关闭现有容器 - 然后重新进入容器


(base) zhijain@moli:~$  docker container ls -a
CONTAINER ID   IMAGE          COMMAND       CREATED      STATUS      PORTS     NAMES
9b7cea48c82f   036440006669   "/bin/bash"   3 days ago   Up 3 days             relaxed_germain#停止容器运行
(base) zhijain@moli:~$ docker stop 9b7cea48c82f
9b7cea48c82f(base) zhijain@moli:~$ docker container ls -a
CONTAINER ID   IMAGE          COMMAND       CREATED      STATUS                        PORTS     NAMES
9b7cea48c82f   036440006669   "/bin/bash"   3 days ago   Exited (137) 29 seconds ago             relaxed_germain(base) zhijain@moli:~$ docker attach 9b7cea48c82f
You cannot attach to a stopped container, start it first(base) zhijain@moli:~$ docker start 9b7cea48c82f
9b7cea48c82f# 重新进入容器命令交互
(base) zhijain@moli:~$ docker attach 9b7cea48c82f
[root@9b7cea48c82f /]# 

docker 拉取镜像 - 创建容器


#搜索镜像
docker search anaconda#拉取镜像
docker pull kunitaya/anaconda3#查看现有镜像
(base) zhijian@moli:~$ docker images
REPOSITORY                       TAG                         IMAGE ID       CREATED         SIZE
hello-world                      latest                      bf756fb1ae65   14 months ago   13.3kB
188.168.18.18:5000/moli/cuda   10.1-cudnn7-devel-centos7   036440006669   14 months ago   4.25GB
kunitaya/anaconda3               latest                      843440bfba13   3 years ago     2.93GB#使用本地镜像,创建 docker 容器
(base) zhijian@moli:~$ docker run -it kunitaya/anaconda3 /bin/bash
[root@9821a4db5b90 /]# 

查看容器状态:另外一个 shell 窗口 执行 docker ps -a 可以发现新的容器 已经创建成功

docker ps -aCONTAINER ID   IMAGE                COMMAND       CREATED              STATUS              PORTS     NAMES
9821a4db5b90   kunitaya/anaconda3   "/bin/bash"   About a minute ago   Up About a minute             vigilant_gould
9b7cea48c82f   036440006669         "/bin/bash"   4 days ago           Up 16 minutes                 relaxed_germain

创建容器:本地 和 容器 共享 当前目录


docker run -it -v 本机路径:容器路径 f088d3e43d56 /bin/bash
本机路径和容器路径须 使用 绝对路径

  • 示例命令如下:
docker run -it -v `pwd`:/build f088d3e43d56 /bin/bash
  • 创建时,指定容器名字
docker run -it --name 'NanoDetTest' -v `pwd`:/build f088d3e43d56 /bin/bash

docker 本地copy文件到容器(如果忘了共享目录会用到)


  • copy 目录 和 文件的 示例如下:
docker cp 本地文件路径  容器ID:容器用户的某目录# 代码sample: 
docker cp /home/zhijian/project/project21/soft 9821a4db5b90:/home/zhijian/soft/docker cp /home/zhijian/project/project21/face_landmark_model.dat 9b7cea48c82f:/home/zhijian/soft/soft/

docker 给 容器 重命名



docker rename 原容器名称 新容器名称

例如:

docker ps -a
CONTAINER ID   IMAGE                COMMAND       CREATED        STATUS                      PORTS     NAMES
8f9b4e1ea28d   f088d3e43d56         "/bin/bash"   2 hours ago    Exited (0) 20 seconds ago             flamboyant_black
48931b434cc9   f088d3e43d56         "/bin/bash"   3 hours ago    Exited (0) 3 hours ago                cranky_beaver# 进行重命名
docker rename flamboyant_black  car_Detectdocker rename cranky_beaver car_DetectFirst# 可以发现容器的名字已经更改
docker ps -a 
CONTAINER ID   IMAGE                COMMAND       CREATED        STATUS                        PORTS     NAMES
8f9b4e1ea28d   f088d3e43d56         "/bin/bash"   3 hours ago    Exited (0) 18 minutes ago               car_Detect
48931b434cc9   f088d3e43d56         "/bin/bash"   3 hours ago    Exited (0) 3 hours ago                  car_DetectFirst

docker 删除容器


# 查看现有容器
docker ps -a CONTAINER ID   IMAGE                COMMAND       CREATED        STATUS                        PORTS     NAMES
8f9b4e1ea28d   f088d3e43d56         "/bin/bash"   3 hours ago    Exited (0) 18 minutes ago               car_Detect
48931b434cc9   f088d3e43d56         "/bin/bash"   3 hours ago    Exited (0) 3 hours ago                  car_DetectFirst9b7cea48c82f   036440006669         "/bin/bash"   5 days ago     Up 4 hours                              relaxed_germain# docker 删除容器
docker rm  relaxed_germain

这篇关于docker实用操作 | 本地和容器共享当前目录 |的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/521803

相关文章

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

Linux挂载linux/Windows共享目录实现方式

《Linux挂载linux/Windows共享目录实现方式》:本文主要介绍Linux挂载linux/Windows共享目录实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录文件共享协议linux环境作为服务端(NFS)在服务器端安装 NFS创建要共享的目录修改 NFS 配

解决docker目录内存不足扩容处理方案

《解决docker目录内存不足扩容处理方案》文章介绍了Docker存储目录迁移方法:因系统盘空间不足,需将Docker数据迁移到更大磁盘(如/home/docker),通过修改daemon.json配... 目录1、查看服务器所有磁盘的使用情况2、查看docker镜像和容器存储目录的空间大小3、停止dock

使用Java填充Word模板的操作指南

《使用Java填充Word模板的操作指南》本文介绍了Java填充Word模板的实现方法,包括文本、列表和复选框的填充,首先通过Word域功能设置模板变量,然后使用poi-tl、aspose-words... 目录前言一、设置word模板普通字段列表字段复选框二、代码1. 引入POM2. 模板放入项目3.代码

利用Python操作Word文档页码的实际应用

《利用Python操作Word文档页码的实际应用》在撰写长篇文档时,经常需要将文档分成多个节,每个节都需要单独的页码,下面:本文主要介绍利用Python操作Word文档页码的相关资料,文中通过代码... 目录需求:文档详情:要求:该程序的功能是:总结需求:一次性处理24个文档的页码。文档详情:1、每个

Python内存管理机制之垃圾回收与引用计数操作全过程

《Python内存管理机制之垃圾回收与引用计数操作全过程》SQLAlchemy是Python中最流行的ORM(对象关系映射)框架之一,它提供了高效且灵活的数据库操作方式,本文将介绍如何使用SQLAlc... 目录安装核心概念连接数据库定义数据模型创建数据库表基本CRUD操作创建数据读取数据更新数据删除数据查

Go语言中json操作的实现

《Go语言中json操作的实现》本文主要介绍了Go语言中的json操作的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录 一、jsOChina编程N 与 Go 类型对应关系️ 二、基本操作:编码与解码 三、结构体标签(Struc

5 种使用Python自动化处理PDF的实用方法介绍

《5种使用Python自动化处理PDF的实用方法介绍》自动化处理PDF文件已成为减少重复工作、提升工作效率的重要手段,本文将介绍五种实用方法,从内置工具到专业库,帮助你在Python中实现PDF任务... 目录使用内置库(os、subprocess)调用外部工具使用 PyPDF2 进行基本 PDF 操作使用

docker 重命名镜像的实现方法

《docker重命名镜像的实现方法》在Docker中无法直接重命名镜像,但可通过添加新标签、删除旧镜像后重新拉取/构建,或在DockerCompose中修改配置文件实现名称变更,感兴趣的可以了解一下... 目录使用标签(Tagging)删除旧的php镜像并重新拉取或构建使用docker Compose在Do

Java JUC并发集合详解之线程安全容器完全攻略

《JavaJUC并发集合详解之线程安全容器完全攻略》Java通过java.util.concurrent(JUC)包提供了一整套线程安全的并发容器,它们不仅是简单的同步包装,更是基于精妙并发算法构建... 目录一、为什么需要JUC并发集合?二、核心并发集合分类与详解三、选型指南:如何选择合适的并发容器?在多