Docker操作 :容器命令

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Docker操作 (四)

容器命令
说明:我们有了镜像才可以创建容器,linux,下载一个centos镜像来测试学习

docker pull centos8

docker run --help  #docker run启动

新建容器并启动

docker run[可选参数] image
# 参数说明
--name="Name"  容器名字 tomcat 01 tomcat02 用来区分容器
-d               后台方式运行
-it            使用交互方式运行, 进入容器查看内容
-P               指定容器的端口 -p 80808080
    -p ip:主机端口:容器端口
    -P 主机端口:容器端口(常用)
    -P 容器端口
-p              随机指定端口
# 测试
docker run -it centos /bin/bash

# 从容器退回主机
exit

列出所有运行的容器

docker ps 
docker ps -a   #列出当前正在运行的容器+历史运行过的容器
docker ps -n=?  # 显示最近创建的容器
docker ps -n=1
docker ps -q     #只显示容器的编号
docker ps -aq    # 显示所有容器的编号

退出容器

exit    # 直接容器停止并退出
Ctrl+P+Q   # 容器不停止退出

删除容器

docker rm 容器id                   # 删除指定容器, 不能删除正在运行的容器,如果要强制删除 rm -f 
docker rm -f $(docker ps -aq)      # 删除所有容器
docker ps -a -q|xargs docker rm    # 删除所有容器

启动和停止容器的操作

docker start 容器id   #启动容器
docker restart 容器id  # 重启容器
docker stop 容器id     # 停止当前正在运行的容器
docker kill 容器id     # 强制停止当前运行的容器

常用的其他命令
后台启动容器

# 命令docker run -d 镜像名
docker run -d 镜像名
# 问题docker ps 发现centos 停止了
# 常见的坑:docker 容器使用后台运行,就必须要有一个前台进程,docker发现没有应用,就会自动停止
# nginx, 容器启动后,发现自己没有提供服务,就会立刻停止,就没有程序了。

查看日志

docker logs
docker logs --help    # 选项
docker logs -f -t --tail 容器id    # 容器,没有日志
# 自己编写shell脚本
"while true;do echo bruce_liu;sleep 1;done"
docker run -d centos -c  /bin/sh "while true;do echo bruce_liu;sleep 1;done" 
# 显示日志
-tf          # 显示日志
--tail num   # 要显示的记录条数

查看容器中的进程信息

# Windows系统环境
# 命令docker top 容器id
C:\cmder
λ docker top 0c7ee03d76dd
UID                 PID                 PPID                C                   STIME               TTY
TIME                CMD
root                5113                5092                0                   13:49               ?
00:00:00            /bin/sh -c while true;do echo bruce_liu;sleep 1;done
root                13416               5113                0                   14:01               ?
00:00:00            /usr/bin/coreutils --coreutils-prog-shebang=sleep /usr/bin/sleep 1
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
1天前
|
Docker 容器
一个docker容器暴露多个端口
一个docker容器暴露多个端口
10 3
|
6天前
|
Kubernetes Cloud Native 持续交付
云原生之旅:Docker容器化与Kubernetes集群管理
【9月更文挑战第33天】在数字化转型的浪潮中,云原生技术如同一艘航船,带领企业乘风破浪。本篇文章将作为你的航海指南,从Docker容器化的基础讲起,直至Kubernetes集群的高级管理,我们将一起探索云原生的奥秘。你将学习到如何封装应用、实现环境隔离,以及如何在Kubernetes集群中部署、监控和扩展你的服务。让我们启航,驶向灵活、可伸缩的云原生未来。
|
3天前
|
安全 Shell Linux
docker进入容器命令
docker进入容器命令
|
3天前
|
运维 数据库 开发者
docker回顾--docker compose详细解释,安装,与常用命令
docker回顾--docker compose详细解释,安装,与常用命令
|
3天前
|
Linux 应用服务中间件 Shell
docker学习--docker容器镜像常用命令大全(简)
本文档详细介绍了Docker中的镜像命令与容器管理命令。镜像命令部分涵盖了镜像搜索、下载、上传等操作;容器管理命令则包括了容器的创建、启动、停止、删除及日志查看等功能。通过具体示例,帮助用户更好地理解和使用Docker相关命令。
|
3天前
|
Shell 应用服务中间件 nginx
docker学习--最详细的docker run 各子命令解释与应用
`docker run` 是 Docker 中用于启动容器的基本命令。常用子命令包括 `-i`(交互模式)、`-t`(分配终端)、`-d`(后台运行)、`-p`(端口映射)、`--name`(指定容器名)。例如,`docker run -it nginx:1.20 /bin/bash` 可以创建并进入交互式容器。使用 `-d` 可在后台运行容器,`-p` 可将容器端口映射到主机端口,`--name` 则用于自定义容器名称以便管理。
|
6天前
|
SQL Shell 数据库
在TDengine容器中创建初始化数据库的Shell命令实例
以上就是在Docker容器环境中部署并初始化TDengine数据库的全过程,希望对你有所帮助。
11 0
|
9天前
|
存储 关系型数据库 MySQL
Docker操作:容器数据卷
Docker操作 (八)
28 0
|
10天前
|
网络协议 安全 开发者
掌握 Docker 网络:构建复杂的容器通信
在 Docker 容器化环境中,容器间的通信至关重要。本文详细介绍了 Docker 网络的基础知识,包括网络驱动、端口映射和命名等核心概念,并深入探讨了 Bridge、Host、Overlay 和 Macvlan 四种网络类型的特点及应用场景。此外,还提供了创建、连接、查看和删除自定义网络的命令示例,以及高级网络配置方法,如网络命名空间、DNS 解析和安全通信配置,帮助开发者构建更健壮的容器化应用。
|
11天前
|
Cloud Native 持续交付 Docker
深入解析Docker容器化技术及其在生产环境中的应用
深入解析Docker容器化技术及其在生产环境中的应用
18 0