Docker入门之命令

news/2024/10/18 9:22:58/

Docker命令学习方式

docker -h
docker run --help # 这种形式参考
# 官方帮助
# https://docs.docker.com/reference/

Docker中命令是一等公民, 容器是为命令服务的,甚至启动容器都是为了执行一个命令

run

docker run -i -t --name c1 centos:latest bash
# 翻译: docker run一个命令,这个命令是bash, 在centos:latest这个容器中执行
​
命令解释
docker run 运行一个命令在容器中,命令是主体,没有命令容器就会消亡
-i 交互式
-t 提供终端
--name c1 把将运行的容器命名为c1
centos:latest 使用centos最新版本容器镜像
bash 在容器中执行的命令

显示如下

[root@59871d258b94 /]#
59871d258b94 容器ID
/ 表示在根目录

可以通过一些命令验证其空间隔离性

ip a s
ps aux
cat /etc/passwd
pwd
​
# 尝试退出 docker的bash命令
exit
会发现容器会exit

docker ps

docker ps --all 可以查看正在运行的和停止运行的容器

docker ps 查看正在运行的容器,本案例由于没有命令在容器中运行,因此容器被停止了,所以本次查看没有结果。

docker inspect

用途:查看容器详细信息

用法:docker inspect 容器ID或者名称

操作说明 在上述提示符处按住ctrl键,再按p键与q键,可以退出交互式的容器,容器会处于运行状态。

exec

在容器中执行命令且结果输出到当前环境

# docker exec -it c2 ls /root
# docker exec c2 ls /root
​
​
命令解释
docker exec 在容器外实现与容器交互执行某命令
-it 交互式
c2 正在运行的容器名称
ls /root 在正在运行的容器中运行相关的命令

attach

进入到容器中执行命令,容器要运行中

docker attach c2
​
命令解释
docker attach 类似于ssh命令,可以进入到容器中
c2 正在运行的容器名称
说明
docker attach 退出容器时,如不需要容器再运行,可直接使用exit退出;如需要容器继续运行,可使用ctrl+p+q

stop

关闭容器

docker stop 容器ID/名称

已关闭的容器可以删除,可以重新启动

start

启动容器

top

查看容器内运行进程信息

docker top 容器ID/容器名称

输出说明
UID 容器中运行的命令用户ID
PID 容器中运行的命令PID
PPID 容器中运行的命令父PID,由于PPID是一个容器,此可指为容器在Docker Host中进程ID
C     占用CPU百分比
STIME 启动时间
TTY   运行所在的终端
TIME  运行时间
CMD   执行的命令

rm

先停再删,否则报错

docker rm c2 # 或 docker rm 9f2eea16da4c # 批量删除 docker ps --all | awk '{if (NR>=2){print $1}}' | xargs docker rm

查看本地容器镜像

docker images
docker image list
docker image ls

它存放在本地什么位置

:/var/lib/docker

image

docker image --help

image是一套命令,可以通过帮助查看


http://www.ppmy.cn/news/1003118.html

相关文章

【零基础学Rust | 基础系列 | Cargo工具】Cargo介绍及使用

文章目录 前言一,Cargo介绍1,Cargo安装2,创建Rust项目2,编译项目:3,运行项目:4,测试项目:5,更新项目的依赖:6,生成项目的文档&#xf…

《Ansible自动化工具篇:Centos操作系统基于ansible工具一键远程离线部署之K8S1.24.12二进制版集群》

一、部署背景 由于业务系统的特殊性,我们需要针对不同的客户环境部署二进制版K8S集群,由于大都数用户都是专网环境,无法使用外网,为了更便捷,高效的部署,针对业务系统的特性,我这边编写了 基于a…

为Android构建现代应用——应用导航设计

在前一章节的实现中,Skeleton: Main structure,我们留下了几个 Jetpack 架构组件,这些组件将在本章中使用,例如 Composables、ViewModels、Navigation 和 Hilt。此外,我们还通过 Scaffold 集成了 TopAppBar 和 BottomA…

面试之Java基础

1.String与StringBuffer与StringBuilder的区别 1.1概念 String:Java中数据类型分为基本数据类型和引用数据类型,String就属于引用数据类型。String是被final所修饰的类,不可被继承。String类不可被修改,我们对字符串的操作在底层…

【go-zero】docker镜像直接部署API与RPC服务 如何实现注册发现?docker network 实现 go-zero 注册发现

一、场景&问题 使用docker直接部署go-zero微服务会发现API无法找到RPC服务 1、API无法发现RPC服务 用docker直接部署 我们会发现API无法注册发现RPC服务 原因是我们缺少了docker的network网桥 2、系统内查看 RPC服务运行正常API服务启动,通过docker logs 查看日志还是未…

iMX6ULL驱动开发 | OLED显示屏SPI驱动实现(SH1106,ssd1306)

周日业余时间太无聊,又不喜欢玩游戏,大家的兴趣爱好都是啥?我觉得敲代码也是一种兴趣爱好。正巧手边有一块儿0.96寸的OLED显示屏,一直在吃灰,何不把玩一把?于是说干就干,最后在我的imax6ul的lin…

实践安装minio

一、下载安装文件 1、在home目录下创建minio文件夹 mkdir /home/minio 2、进入/home/minio 文件夹 cd /home/minio 3、下载文件 (此处下载比较慢,建议手动下载,然后上传到目录中) wget https://dl.min.io/server/minio/releas…

电商系统架构设计系列(七):如何构建一个电商的商品搜索系统?

上篇文章中,我给你留了一个思考题:如何构建一个商品搜索系统? 今天这篇文章,我们来说一下电商的商品搜索系统。 引言 搜索这个特性可以说是无处不在,现在很少有网站或者系统不提供搜索功能了,所以&#xf…