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

相关文章

Python使用openpyxl读取Excel的操作详解

《Python使用openpyxl读取Excel的操作详解》本文介绍了使用Python的openpyxl库进行Excel文件的创建、读写、数据操作、工作簿与工作表管理,包括创建工作簿、加载工作簿、操作... 目录1 概述1.1 图示1.2 安装第三方库2 工作簿 workbook2.1 创建:Workboo

Ubuntu 24.04启用root图形登录的操作流程

《Ubuntu24.04启用root图形登录的操作流程》Ubuntu默认禁用root账户的图形与SSH登录,这是为了安全,但在某些场景你可能需要直接用root登录GNOME桌面,本文以Ubuntu2... 目录一、前言二、准备工作三、设置 root 密码四、启用图形界面 root 登录1. 修改 GDM 配

JSONArray在Java中的应用操作实例

《JSONArray在Java中的应用操作实例》JSONArray是org.json库用于处理JSON数组的类,可将Java对象(Map/List)转换为JSON格式,提供增删改查等操作,适用于前后端... 目录1. jsONArray定义与功能1.1 JSONArray概念阐释1.1.1 什么是JSONA

PostgreSQL中rank()窗口函数实用指南与示例

《PostgreSQL中rank()窗口函数实用指南与示例》在数据分析和数据库管理中,经常需要对数据进行排名操作,PostgreSQL提供了强大的窗口函数rank(),可以方便地对结果集中的行进行排名... 目录一、rank()函数简介二、基础示例:部门内员工薪资排名示例数据排名查询三、高级应用示例1. 每

SpringBoot结合Docker进行容器化处理指南

《SpringBoot结合Docker进行容器化处理指南》在当今快速发展的软件工程领域,SpringBoot和Docker已经成为现代Java开发者的必备工具,本文将深入讲解如何将一个SpringBo... 目录前言一、为什么选择 Spring Bootjavascript + docker1. 快速部署与

使用Docker构建Python Flask程序的详细教程

《使用Docker构建PythonFlask程序的详细教程》在当今的软件开发领域,容器化技术正变得越来越流行,而Docker无疑是其中的佼佼者,本文我们就来聊聊如何使用Docker构建一个简单的Py... 目录引言一、准备工作二、创建 Flask 应用程序三、创建 dockerfile四、构建 Docker

Java操作Word文档的全面指南

《Java操作Word文档的全面指南》在Java开发中,操作Word文档是常见的业务需求,广泛应用于合同生成、报表输出、通知发布、法律文书生成、病历模板填写等场景,本文将全面介绍Java操作Word文... 目录简介段落页头与页脚页码表格图片批注文本框目录图表简介Word编程最重要的类是org.apach

SpringBoot+Docker+Graylog 如何让错误自动报警

《SpringBoot+Docker+Graylog如何让错误自动报警》SpringBoot默认使用SLF4J与Logback,支持多日志级别和配置方式,可输出到控制台、文件及远程服务器,集成ELK... 目录01 Spring Boot 默认日志框架解析02 Spring Boot 日志级别详解03 Sp

Spring IoC 容器的使用详解(最新整理)

《SpringIoC容器的使用详解(最新整理)》文章介绍了Spring框架中的应用分层思想与IoC容器原理,通过分层解耦业务逻辑、数据访问等模块,IoC容器利用@Component注解管理Bean... 目录1. 应用分层2. IoC 的介绍3. IoC 容器的使用3.1. bean 的存储3.2. 方法注

Python实现对阿里云OSS对象存储的操作详解

《Python实现对阿里云OSS对象存储的操作详解》这篇文章主要为大家详细介绍了Python实现对阿里云OSS对象存储的操作相关知识,包括连接,上传,下载,列举等功能,感兴趣的小伙伴可以了解下... 目录一、直接使用代码二、详细使用1. 环境准备2. 初始化配置3. bucket配置创建4. 文件上传到os