Docker容器操作

简介: Docker容器操作

N.1 查看容器

1)查看正在运行容器,#docker ps

——————————————————————

——————————————————————

——————————————————————

2)查看所有的容器(启动与未启动的容器),#docker ps -a

——————————————————————

——————————————————————

3)查看最后一次运行的容器,#docker ps –l

——————————————————————

——————————————————————

4)查看停止的容器,#docker ps -f status=exited

——————————————————————

——————————————————————

N.2 创建与启动容器

注意:必须先有镜像,再有容器,下面以CentOS镜像演示,先拉去 镜像 #docker pull centos:7 。

1)创建容器命令,#docker run [OPTIONS] 镜像名:标签名

(1)创建容器 [OPTIONS] 常用的参数说明:

[1] -i 表示交互式运行容器(就是创建容器后,马上会启动容器,并进入容器 ),通常与-t 同时使用

[2] -t 启动后会进入其容器命令行, 通常与 -i 同时使用; 加入 -it 两个参数后,容器创建就能登录进去。即分配一个伪终端。

[2] --name 为创建的容器指定一个名称 。

[3] -d 创建一个守护式容器在后台运行,并返回容器ID;

这样创建容器后不会自动登录容器,如果加-i 参数,创建后就会运行容器。

[4] -v 表示目录映射, 格式为: -p 宿主机目录:容器目录

注意:最好做目录映射,在宿主机上做修改,然后共享到容器上。

[5] -p 表示端口映射,格式为: -p 宿主机端口:容器端口

2)交互式容器

(1)说明: 就是创建容器后,马上会启动容器,并进入容器。

(2)创建一个交互式容器并取名为 mycentos , ( /bin/bash 是linux中的命令解析器,会进入到容器里面命令行,注意:docker 命令是不能在容器里面使用)。

(3)#docker run -it --name=mycentos centos:7 /bin/bash

——————————————————————

——————————————————————

——————————————————————

(4)新开一个 shell 窗口,再创建一个 mycentos1 容器

——————————————————————

——————————————————————

(5)总结: 同一个镜像, 可运行多个容器

N.3 退出容器

1)退出并停止当前容器

(1)注意在容器内部的命令行执行,#exit

——————————————————————

——————————————————————

2)退出不停止当前容器,按键盘: Ctrl + p + q

——————————————————————

——————————————————————

N.4 启动与停止容器

1)启动已运行过的容器,#docker start 容器名称|容器id

——————————————————————

——————————————————————

2)启动所有运行过的容器

(1)是查询所有运行过的容器ID:docker ps -a -q ,

(2)#docker start `docker ps -a -q`

——————————————————————

——————————————————————

3)停止正在运行的容器,#docker stop 容器名称|容器id

(1)当然前面的exit和stop,在某些情况, 有一样的效果

——————————————————————

——————————————————————

4)强制停止正在运行的容器(一般不用此,除非卡了),#docker kill 容器名称|容器id

——————————————————————

——————————————————————

5)停止所有在运行的容器,#docker stop `docker ps -a -q`

——————————————————————

——————————————————————

N.5 创建守护式容器

1)如果对于一个需要长期运行的容器来说,我们可以创建一个守护式容器(后台运行的容器)。

(1)创建(-d)并运行(-i)守护式容器命令如下(容器名称不能重复):

#docker run -id --name=mycentos2 centos:7

——————————————————————

——————————————————————

N.6 登录容器

1)登录已经启动的容器方式:

(1)使用 docker exec 进入容器中打开命令行终端

(2)如:#docker exec -it 容器名称|容器id /bin/bash

——————————————————————

——————————————————————

2)exit 针对通过 docker exec 进入的容器,只退出但不停止容器。

——————————————————————

——————————————————————

N.7 拷贝宿主机与容器中的文件

1)将宿主机文件拷贝到容器内

(1)#docker cp 要拷贝的宿主机文件或目录 容器名称:容器文件或目录

——————————————————————

——————————————————————

——————————————————————

——————————————————————

2)从容器内文件拷贝到宿主机。

(1)#docker cp 容器名称:要拷贝的容器文件或目录 宿主机文件或目录

(2)(文件拷贝 docker cp 命令 均在宿主机中操作)

N.8 数据目录挂载

我们可以在创建容器的时候,将宿主机的目录与容器内的目录进行映射,

这样我们就可以通过修改宿主机某个目录的文件从而去影响容器。使用 -v 选项

1)目录挂载

(1)#docker run -id -v /宿主机绝对路径目录:/容器内目录 --name=容器名 镜像名

——————————————————————

——————————————————————

2)目录挂载只读(Read-only)权限

(1)#docker run -id -v /宿主机绝对路径目录:/容器内目录:ro --name=容器名 镜像名

——————————————————————

——————————————————————

N.9 看容器内部细节

1)查看容器运行内部细节,比如可看容器的IP。

(1)#docker inspect 容器名

——————————————————————

——————————————————————

N.10 查看容器IP地址

1)直接显示IP地址。

(1)#docker inspect --format='{{.NetworkSettings.IPAddress}}' 容器名

——————————————————————

——————————————————————

N.11 删除容器

1)删除指定的容器:

(1)#docker rm 容器名称 | 容器ID

——————————————————————

——————————————————————

2)删除所有容器(其中运行中的容器无法删除,所以先停再删):

(1)#docker rm `docker ps -a -q`

——————————————————————

——————————————————————

相关文章
|
6天前
|
存储 Docker 容器
docker中挂载数据卷到容器
【10月更文挑战第12天】
26 5
|
2天前
|
存储 关系型数据库 MySQL
|
3天前
|
存储 Docker 容器
docker中挂载数据卷到容器
【10月更文挑战第13天】
9 2
|
4天前
|
运维 监控 数据可视化
Docker容器可视化管理工具 - WGCLOUD基础介绍
WGCLOUD是新一代运维监测平台,它可以监控Docker容器的各种性能数据,比如内存,cpu,Image,运行时间,运行状态,端口映射等信息
|
4天前
|
Ubuntu Shell 开发者
Docker入门:轻松开始容器化之旅
【10月更文挑战第17天】Docker 是一种开源的应用容器引擎,它让开发者能够“一次构建、到处运行”。Docker 通过容器化技术将应用程序及其依赖打包在一起,从而确保应用在任何环境中都能一致地运行。本文将为新手用户提供一个全面的Docker入门指南,包括基本概念、优势、安装配置以及如何创建和管理容器。
25 2
|
11天前
|
存储 运维 云计算
探索Docker容器化:从入门到实践
在这个快速发展的云计算时代,Docker容器化技术正在改变应用的开发、部署和管理方式。本文旨在为初学者提供一个关于Docker的全面入门指南,并通过实践案例展示Docker在实际开发中的应用。我们将一起了解Docker的核心概念、基本操作、网络和存储,以及如何构建和部署一个简单的Web应用。无论你是开发者还是运维人员,本文都会帮助你快速掌握Docker的核心技能。
|
7天前
|
存储 测试技术 开发者
docker中将数据卷挂载到容器
【10月更文挑战第11天】
20 3
|
8天前
|
缓存 运维 Docker
容器化运维:Docker Desktop 占用磁盘空间过大?教你轻松解决!
Windows Docker Desktop 使用过程中,因镜像、容器数据及构建缓存的累积,可能导致磁盘空间占用过高。通过删除无用镜像与容器、压缩磁盘以及清理构建缓存等方法,可有效释放空间。具体步骤包括关闭WSL、使用`diskpart`工具压缩虚拟磁盘、执行`docker buildx prune -f`清理缓存等。这些操作能显著减少磁盘占用,提升系统性能。
|
7天前
|
存储 应用服务中间件 云计算
深入解析:云计算中的容器化技术——Docker实战指南
【10月更文挑战第14天】深入解析:云计算中的容器化技术——Docker实战指南
29 1
|
6天前
|
存储 Kubernetes 监控
深入探索Docker容器化技术的奥秘
【10月更文挑战第15天】深入探索Docker容器化技术的奥秘
14 0