博客博客
  • 介绍
  • 链表反转
  • 排序算法
  • 二叉树

    • 介绍
    • 深度算法
  • 加密算法

    • 非对称加密
    • 摘要算法
    • 对称加密
  • 激活Windows 11
  • ASP.NET Core 健康检查
  • 获取程序集根目录
  • 闭包
  • CSS 单位指南:CSS em、rem、vh、vw 等详解
  • 自定义Code First约定
  • .NET安装本地化的智能提示
  • 免费开通域名企业邮箱
  • GRPC
  • Hexo生成github page
  • .Net Core日志管理之Log4net
  • linux下更新jenkins
  • MySQL的四种事务隔离级别
  • 发布NuGet包
  • rimraf命令
  • Ubuntu基础操作
  • Ubuntu安装jenkins
  • Vscode无法执行npm等脚本的问题
  • Json

    • Countries
  • 简介
  • 设计原则
  • 行为型模式

    • 介绍
    • 策略模式
  • 创建型模式

    • 介绍
    • 单例模式
  • 结构型模式

    • 介绍
  • Docker指南

    • 介绍
    • 安装
  • Docker实例

    • 介绍
    • docker安装consul
    • docker安装elasticsearch
    • docker安装gitlab-runner
    • docker安装gitlab
    • docker安装jenkins
    • docker安装kafka
    • docker安装mongo
    • docker安装mysql
    • docker安装nginx
    • docker安装portainer
    • docker安装rabbitmq
    • docker安装redis
    • docker安装teamcity
  • Docker教程

    • Docker命令大全
    • docker nginx添加端口映射
    • docker服务管理
  • Docker-Compose

    • 网络配置
    • service name和container name
  • 世界上的另一个我
  • 计划生育宣传标语
  • IT术语
  • Single is simple, double is trouble
  • 矿泉水、纯净水、天然水究竟有啥区别
  • 联系
  • 捐赠
GitHub
  • 介绍
  • 链表反转
  • 排序算法
  • 二叉树

    • 介绍
    • 深度算法
  • 加密算法

    • 非对称加密
    • 摘要算法
    • 对称加密
  • 激活Windows 11
  • ASP.NET Core 健康检查
  • 获取程序集根目录
  • 闭包
  • CSS 单位指南:CSS em、rem、vh、vw 等详解
  • 自定义Code First约定
  • .NET安装本地化的智能提示
  • 免费开通域名企业邮箱
  • GRPC
  • Hexo生成github page
  • .Net Core日志管理之Log4net
  • linux下更新jenkins
  • MySQL的四种事务隔离级别
  • 发布NuGet包
  • rimraf命令
  • Ubuntu基础操作
  • Ubuntu安装jenkins
  • Vscode无法执行npm等脚本的问题
  • Json

    • Countries
  • 简介
  • 设计原则
  • 行为型模式

    • 介绍
    • 策略模式
  • 创建型模式

    • 介绍
    • 单例模式
  • 结构型模式

    • 介绍
  • Docker指南

    • 介绍
    • 安装
  • Docker实例

    • 介绍
    • docker安装consul
    • docker安装elasticsearch
    • docker安装gitlab-runner
    • docker安装gitlab
    • docker安装jenkins
    • docker安装kafka
    • docker安装mongo
    • docker安装mysql
    • docker安装nginx
    • docker安装portainer
    • docker安装rabbitmq
    • docker安装redis
    • docker安装teamcity
  • Docker教程

    • Docker命令大全
    • docker nginx添加端口映射
    • docker服务管理
  • Docker-Compose

    • 网络配置
    • service name和container name
  • 世界上的另一个我
  • 计划生育宣传标语
  • IT术语
  • Single is simple, double is trouble
  • 矿泉水、纯净水、天然水究竟有啥区别
  • 联系
  • 捐赠
GitHub
  • Docker指南

    • 介绍
    • 安装
  • Docker实例

    • 介绍
    • docker安装consul
    • docker安装elasticsearch
    • docker安装gitlab-runner
    • docker安装gitlab
    • docker安装jenkins
    • docker安装kafka
    • docker安装mongo
    • docker安装mysql
    • docker安装nginx
    • docker安装portainer
    • docker安装rabbitmq
    • docker安装redis
    • docker安装teamcity
  • Docker教程

    • Docker命令大全
    • docker nginx添加端口映射
    • docker服务管理
  • Docker-Compose

    • 网络配置
    • service name和container name

安装/运行

查找镜像

docker search <image_name>
  • image_name 镜像名称
# 查找helloword镜像
docker search helloworld

拉取镜像到本地

docker pull <image_name><:tag>
  • image_name 镜像名称。
  • :tag 镜像标签,表示拉取指定tag的镜像,比如image_name:1.0,默认为latest
# 拉取最新的helloworld镜像
docker pull helloworld:latest

运行容器

docker run -itd -rm --name <container_name> -p 80:80 <image_name>
  • --name container_name 容器命名为<container_name>
  • -rm 容器在退出时自动删除
  • -d 后台运行容器,并返回容器ID
  • _e 设置容器参数(环境变量)
  • -p 80:80 将本地计算机上的端口80映射到容器中的端口80
  • -v xx:xxx 将本地路径绑定到容器中的路径
  • image_name 镜像名称

示例一

# 运行helloworld镜像,这里没有指定--name,系统将随机命名容器
docker run helloworld

示例二

# --name alsync.web 容器命名为alsync.web
# -rm 容器在退出时自动删除
# -d 后台运行
# -p 5000:80 将本地计算机上的端口 5000 映射到容器中的端口 80
docker run -it --rm -p 5000:80 --name alsync.web alsync.web

显示容器/镜像

显示容器

docker ps <-a|-q|-aq>
  • -a 显示所有的容器,包括未运行的
  • -q 静默模式,只显示容器编号
# 显示所有的容器,默认为运行中的
docker ps
# 显示所有的容器,包括未运行的
docker ps -a
# 显示所有容器的编号
docker ps -aq

显示镜像

docker images

启动/停止容器

docker start/stop <container>
  • container 容器名称或者容器ID

批量启动所有容器

docker start $(docker ps -a | awk '{ print $1}' | tail -n +2)

批量停止所有容器

docker stop $(docker ps -a | awk '{ print $1}' | tail -n +2)

删除容器/镜像

删除容器

docker rm <container>
  • container 容器名称或者容器ID

删除所有的容器

docker rm $(docker ps -a -q)
# 或者
docker rm $(docker ps -aq)

删除镜像

docker rmi <image>
  • image 镜像ID或者名称

删除所有untagged镜像

docker rmi $(docker images | grep "^<none>" | awk "{print $3}")

删除所有镜像

docker rmi $(docker images -q)

更新容器

修改容器的配置参数

docker update --restart=always nginx
  • --restart=always 总是重启,即在docker重启后会自动启动该容器

进入容器

部分容器有bash命令,我们还可以通过执行bash进入到容器中查看文件信息

docker exec -it <container_name> /bin/bash
  • container_name 容器名称
  • /bin/bash 执行命令,也有/bin/sh和bin/ash

启动某个服务/代理

sh <agent/services.sh> start
  • agent/services.sh 服务/代理文件名

容器日志

很多容器在首次启动时会显示一些信息,如果运行容器时是采用后台运行(-d),那么启动后可以通过日志查看输出信息

docker logs <container_name>

相关链接

  • Docker命令大全
  • Docker删除容器与镜像
Next
docker nginx添加端口映射