作者信息:https://home.cnblogs.com/u/huangjiabobk

在运维工作中,镜像启动一个容器的命令的什么?

在运维工作中,使用 Docker 镜像启动容器是日常操作之一。Docker 提供了多种命令和参数用于启动容器,这些命令和参数可以根据实际需求灵活组合,实现不同的功能和配置。以下是关于如何使用镜像启动容器的详细说明,包括常用命令、参数及其作用。

1. 基本命令:docker run

docker run 是启动容器的核心命令,它会根据指定的镜像创建一个新的容器,并启动它。如果本地没有指定的镜像,Docker 会自动从 Docker Hub 或指定的仓库拉取镜像。

基本格式:
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
2. 常用参数

以下是 docker run 命令中常用的参数及其作用:

(1)-d(detach mode)
  • 作用:后台运行容器。

  • 示例

    docker run -d ubuntu:20.04
  • 说明:容器在后台运行,不会阻塞终端。

(2)--name(指定容器名称)
  • 作用:为容器指定一个名称,便于后续管理。

  • 示例

    docker run --name myubuntu -d ubuntu:20.04
  • 说明:如果不指定名称,Docker 会自动生成一个随机名称。

(3)-p(端口映射)
  • 作用:将容器的端口映射到宿主机的端口。

  • 格式

    -p <宿主机端口>:<容器端口>
  • 示例

    docker run -d -p 8080:80 nginx
  • 说明:将容器的 80 端口映射到宿主机的 8080 端口。

(4)-v(挂载卷)
  • 作用:将宿主机的目录或文件挂载到容器中。

  • 格式

    -v <宿主机路径>:<容器路径>
  • 示例

    docker run -d -v /host/path:/container/path nginx
  • 说明:用于持久化数据或共享文件。

(5)-e(设置环境变量)
  • 作用:在容器中设置环境变量。

  • 格式

    -e <KEY>=<VALUE>
  • 示例

    docker run -d -e MY_VAR=value myapp:latest
  • 说明:环境变量可以在容器内部使用。

(6)--network(指定网络)
  • 作用:将容器连接到指定的网络。

  • 示例

    docker run --network mynet -d myapp:latest
  • 说明:默认情况下,容器会连接到默认的桥接网络。

(7)--restart(设置重启策略)
  • 作用:定义容器的重启策略。

  • 常见值

    • no:不自动重启。
    • always:始终重启。
    • on-failure:仅在失败时重启。
  • 示例

    docker run --restart=always -d myapp:latest
(8)--rm(容器退出时自动删除)
  • 作用:容器退出时自动删除容器。

  • 示例

    docker run --rm -it ubuntu:20.04 /bin/bash
  • 说明:适用于临时容器,避免占用空间。

(9)--cpus--memory(限制资源)
  • 作用:限制容器的 CPU 和内存使用。

  • 示例

    docker run --cpus=2 --memory=1g -d myapp:latest
  • 说明:用于控制容器的资源占用。

3. 示例:启动一个 Web 应用容器

以下是一个完整的示例,展示如何使用 docker run 启动一个带有端口映射、环境变量和持久化卷的 Web 应用容器。

bash复制

docker run -d \
--name mywebapp \
-p 8080:80 \
-v /host/data:/app/data \
-e DB_HOST=localhost \
--restart=always \
myapp:latest
  • 解释
    • -d:后台运行。
    • --name mywebapp:指定容器名称。
    • -p 8080:80:将容器的 80 端口映射到宿主机的 8080 端口。
    • -v /host/data:/app/data:将宿主机的 /host/data 目录挂载到容器的 /app/data
    • -e DB_HOST=localhost:设置环境变量 DB_HOST
    • --restart=always:容器退出时自动重启。
    • myapp:latest:使用 myapp:latest 镜像启动容器。
4. 查看容器状态

启动容器后,可以通过以下命令查看容器的状态:

(1)docker ps
  • 作用:列出正在运行的容器。

  • 示例

    docker ps
(2)docker ps -a
  • 作用:列出所有容器(包括已停止的)。

  • 示例

    docker ps -a
(3)docker logs
  • 作用:查看容器的日志输出。

  • 示例

    docker logs mywebapp
(4)docker inspect
  • 作用:查看容器的详细配置信息。

  • 示例

    docker inspect mywebapp
5. 我的总结

综上所述,使用 docker run 命令启动容器时,可以根据实际需求灵活组合各种参数,实现端口映射、环境变量设置、持久化卷挂载、资源限制等功能。掌握这些命令和参数,可以帮助运维人员高效地管理和部署容器化应用,确保应用的稳定运行。

posted @   黄嘉波  阅读(9)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
历史上的今天:
2024-02-17 在k8S中,Pod生命周期是什么?
2024-02-17 在k8S中,HPA V1 V2的区别是什么?
2024-02-17 在k8S中,Service怎么关联Pod的?
2024-02-17 在k8S中,如何使用EFK实现日志的统 一管理?
2024-02-17 在k8S中,Metric Service是什么?
版权声明:原创作品,谢绝转载!否则将追究法律责任。--作者 黄嘉波
点击右上角即可分享
微信分享提示