当前位置: 首页 > article >正文

Docker使用指南(二)——容器相关操作详解(实战案例教学,创建/使用/停止/删除)

目录

1.容器操作相关命令​编辑

案例一:

案例二:

容器常用命令总结:

1.查看容器状态:

2.删除容器:

3.进入容器:


二、Docker基本操作——容器篇

1.容器操作相关命令

下面我们用两个案例来具体实操一下这些容器命令,方便大家更好的理解:

案例一:

创建并且运行一个Nginx容器


步骤一:去docker hub查看Nginx的容器运行命令

首先docker hub官网搜索 Nginx,切换到Overview这一栏;

然后往下滑,找到 How to use this image栏目,可以看到很多种方式,找一个相对简单的命令复制;

docker run --name some-nginx -d -p 8088:80 nginx

命令解读:

  • docker run:创建并运行一个容器

  • -name:给容器起一个名字,比如叫做 some-nginx

  • -d:后台运行容器。如果不加 ,容器会在前台运行,并占用当前终端

  • -p:将宿主机端口与容器端口映射,冒号左侧8088是宿主机端口,右侧80是容器端口

  • nginx:镜像名称,例如nginx(不写tag版本,就默认是latest)

为什么要进行端口映射?

        答:由于容器是对外隔离的,用户请求是无法直接访问到容器中的端口的;因此将主机的某个端口xx01与Nginx容器的80端口做一个映射;当用户想要访问nginx时,直接访问http://+主机IP地址:xx01即可映射到容器中的端口http://+主机IP地址:80


步骤二:运行并访问Nginx容器

① 运行一个nginx容器:

docker run --name nginxC01 -d -p 88:80 nginx

② 查看容器列表

docker ps

③ 浏览器访问Nginx(检测是否成功)

  • 如果配置正确,应该能够看到 Nginx 默认的欢迎页面,显示“Welcome to nginx!”

注意:访问前记得关闭防火墙,或者开放指定端口(例如我的是88)

关闭防火墙:

sudo systemctl stop firewalld

查看防火墙状态:

sudo systemctl status firewalld

防火墙开放88端口:

sudo firewall-cmd --zone=public --add-port=88/tcp --permanent

还有:如果你使用的是云服务器(比如 AWS、阿里云等): 确保你已在云服务的安全组(或者防火墙配置)中允许 88 端口的访问。

步骤三:查看并设置日志

查看容器日志的命令:

docker logs 【容器名】
或者
docker logs 【容器名】-f
  • 添加-f参数可以持续查看日志,ctrl+c退出;

总结

docker run命令的常见参数:

  1. --name:指定容器名称

  2. -p:指定端口映射

  3. -d:让容器后台运行

查看容器日志的命令:

  1. docker logs

  2. 添加-f参数可以持续查看日志


案例二:

进入Nginx容器,查看首页的HTML文件内容

步骤一:进入容器,进入我们刚刚创建的nginx容器

命令为:

docker exec -it nginxC01 bash

命令解读:

  • docker exec进入容器内部,执行一个命令;

  • -t:给当前进入的容器创建一个标准输入、输出终端,允许我们与容器交互;

  • nginxC01要进入的容器名称;

  • bash:进入容器后使用的命令格式,bash是指定命令格式为Linux终端交互命令;

可以看到,容器都具有自己的目录结构:

步骤二:进入DockerHub官网,查看nginx容器的目录结构

通常在 How to use this image 这一块,作者都会写一些容器使用方法的信息。

可以看到作者告诉我们,静态HTML目录为: /usr/share/nginx/html

① 进入该目录

② 使用cat命令查看index.html的信息:

④ 使用exit退出容器

exit

⑤ 停止容器

docker stop nginxC01

容器常用命令总结:

1.查看容器状态:
  • 查看当前正在运行的容器:

    docker ps
  • 查看所有容器(包括已停止的容器):

    docker ps -a
2.删除容器:
  • 删除已停止的容器:

    docker rm <容器ID或容器名>
  • 删除运行中的容器(需要添加 -f 参数强制删除):

    docker rm -f <容器ID或容器名>
3.进入容器:
  • 进入容器并执行命令:

    docker exec -it <容器名或容器ID> <命令>

    例如,进入容器并打开交互式 Shell:

    docker exec -it <容器名或容器ID> /bin/bash
注意:
  • docker exec 进入容器后,可以执行命令,例如查看容器内的文件;

  • 但不推荐在容器内直接修改文件。

  • 推荐使用 Dockerfile 和构建镜像来管理容器的配置和文件。


http://www.kler.cn/a/532677.html

相关文章:

  • Hot100之堆
  • 算法与数据结构(括号匹配问题)
  • 求水仙花数,提取算好,打表法。或者暴力解出来。
  • 数组排序算法
  • 自动驾驶---两轮自行车的自主导航
  • 使用Visual Studio打包Python项目
  • 开发指南094-in语句的处理
  • Maven(Ⅱ):依赖范围,依赖传递,依赖阻断,可选依赖
  • 10分钟本地部署Deepseek-R1
  • Laravel Validation validated() 的实现
  • Selenium记录RPA初阶 - 基本输入元件
  • js --- 获取随机数
  • 预防和应对DDoS的方法
  • 【力扣】283.移动零
  • springboot后台系统开发(三)- 日志
  • 【OS】AUTOSAR架构下的Interrupt详解(上篇)
  • 某某音乐歌单下载(电脑)
  • 物联网领域的MQTT协议,优势和应用场景
  • spark君第一篇图文讲解Delta源码和实践的文章
  • C基础寒假练习(8)
  • ioDraw桌面版 v3.4.0发布!AI文生图,AI图生图,手绘风格一键转换!
  • 37、【OS】【Nuttx】OSTest分析(2):任务创建
  • 深入探索Vue 3组合式API
  • 实例研究:设计一个文档编辑器(1)
  • 有用的sql链接
  • 调用DeepSeek API实现对本地数据库的AI管理