Docker常用命令

本文详细列举了Docker的各种常用命令,包括查看版本、系统信息、启动和停止服务,以及镜像和容器的管理。还介绍了如何通过docker run启动不同服务(如Tomcat、MySQL、Nginx等),以及如何执行、查看和管理容器。此外,还涵盖了容器的杀掉、删除、检查、日志查看和端口、文件结构的检查等操作。这些命令对于Docker的日常管理和运维至关重要。
摘要由CSDN通过智能技术生成

Docker常用命令

命令描述
docker -v查看docker版本
docker -info查看docker系统信息,包括镜像和容器数
systemctl start docker.server启动docker服务
systemctl stop docker.service关闭docker服务
systemctl status docker.service查看docker状态
systemctl enable docker.service设置开机自动启动
docker search 镜像名查询官方镜像和所有个人公共镜像
docker pull 镜像名:版本号拉取镜像,不加版本号自动下载latest最新版本
docker images查看docker镜像列表
docker rmi 镜像名:版本号删除镜像
docker ps -a查看docker容器列表
docker start 容器名/ID启动一个或多个已经被停止的容器
docker stop 容器名/ID停止一个运行中的容器
docker restart 容器名/ID重启容器
docker rm 容器名/ID移除docker容器
docker exec -it 容器名/ID /bin/bash进入docker容器内部终端
hostname、ip addr、env进入docker容器内部终端后查看容器相关信息
docker logs 容器名/ID查看容器相关日志
docker cp 容器名/ID:容器中文件位置 拷贝unix位置将容器内部文件拷贝出至unix

启动容器命令:

tomcat启动命令:
docker run -d -p 8080:8080 -v /usr/local/warFile/docker-tomcat:/usr/local/tomcat/webapps --name mytomcat tomcat

mysql启动命令:
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=passw0rd --name mysql mysql

nginx启动命令:
docker run -d -p 80:80 --name mynginx nginx

rabbitmq启动命令:
docker run -d -p 15672:15672 -p 5672:5672 -p 25672:25672 -p 61613:61613 -p 1883:1883 -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=passw0rd --hostname my-rabbit --name myrabbit rabbitmq:management

es启动命令:
docker run -d -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx512m" --name myelasticsearch elasticsearch:7.9.1

kibana启动命令:
docker run -d --name mykibana -e ELASTICSEARCH_URL=http://123.56.9.39:9200 -p 5601:5601 kibana

zookeeper启动命令:
docker run -d --name myzookeeper -p 2181:2181 zookeeper

consul启动命令:
docker run -d --name myconsul -p 8500:8500 consul

nacos启动命令:
docker run --name mynacos -d -p 8848:8848 -e JVM_XMS=512m -e JVM_XMX=2048m -e MODE=standalone -e PREFER_HOST_MODE=hostname -v /home/nacos/logs:/home/nacos/logs nacos/nacos-server:2.0.0

语法:
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

OPTIONS说明:

  • -a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项;
  • -d: 后台运行容器,并返回容器ID;
  • -i: 以交互模式运行容器,通常与 -t 同时使用;
  • -P: 随机端口映射,容器内部端口随机映射到主机的端口;
  • -p: 指定端口映射,格式为:主机(宿主)端口:容器端口;
  • -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
  • -name=“nginx-lb”: 为容器指定一个名称;
  • -dns 8.8.8.8: 指定容器使用的DNS服务器,默认和宿主一致;
  • -dns-search example.com: 指定容器DNS搜索域名,默认和宿主一致;
  • -h “mars”: 指定容器的hostname;
  • -e username=“ritchie”: 设置环境变量;
  • -env-file=[]: 从指定文件读入环境变量;
  • -cpuset=“0-2” or --cpuset=“0,1,2”: 绑定容器到指定CPU运行;
  • -m :设置容器使用内存最大值;
  • -net=“bridge”: 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型;
  • -link=[]: 添加链接到另一个容器;
  • -expose=[]: 开放一个端口或一组端口;
  • -volume , -v: 绑定一个卷;

杀掉容器命令:

杀掉运行中的容器mynginx:
docker kill -s KILL mynginx

语法:
docker kill [OPTIONS] CONTAINER [CONTAINER...]
OPTIONS说明:

  • -s :向容器发送一个信号 ,默认 KILL;

删除容器命令:

删除容器mynginx:
docker rm -f mynginx

移除容器 mynginx 对容器 db 的连接:
docker rm -l db

删除容器 mynginx, 并删除容器挂载的数据卷:
docker rm -v mynginx

删除所有已经停止的容器:
docker rm $(docker ps -a -q)

语法:
docker rm [OPTIONS] CONTAINER [CONTAINER...]
OPTIONS说明:

  • -f :通过 SIGKILL 信号强制删除一个运行中的容器;
  • -l :移除容器间的网络连接,而非容器本身;
  • -v :删除与容器关联的卷;

操作容器命令:

进入mynginx容器内部:
docker exec -it mynginx /bin/bash

在容器 mynginx 中以交互模式执行容器内 /root/runoob.sh 脚本:
docker exec -it mynginx /bin/sh /root/runoob.sh

语法:
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
OPTIONS说明:

  • -d :分离模式: 在后台运行;
  • -i :即使没有附加也保持 STDIN终端 打开;
  • -t :分配一个伪终端

查看容器命令:

语法:
docker ps [OPTIONS]
OPTIONS说明:

  • -a :显示所有的容器,包括未运行的;
  • -f :根据条件过滤显示的内容;
  • --format :指定返回值的模板文件;
  • -l :显示最近创建的容器;
  • -n :列出最近创建的n个容器;
  • --no-trunc :不截断输出;
  • -q :静默模式,只显示容器编号;
  • -s :显示总的文件大小;

查看容器元数据命令:

查看 mynginx 的元数据:
docker inspect mynginx

语法:
docker inspect NAME|ID [NAME|ID...]

查看容器进程命令:

查看 mynginx 的进程:
docker top mynginx

语法:
docker top NAME|ID [NAME|ID...]

查看容器日志命令:

查看 mynginx 的日志输出:
docker logs -f mynginx

查看容器 mynginx 从2021年1月1日后的最新10条日志:
docker logs --since="2021-01-01" --tail=10 mynginx

语法:
docker logs [OPTIONS] CONTAINER
OPTIONS说明:

  • -f : 跟踪日志输出;
  • --since :显示某个开始时间的所有日志;
  • -t : 显示时间戳;
  • --tail :仅列出最新N条容器日志;

查看容器端口命令:

查看 mynginx 的端口映射:
docker port mynginx

语法:
docker port NAME|ID [NAME|ID...]

查看容器文件结构命令:

查看 mynginx 的端口映射:
docker diff mynginx

语法:
docker diff NAME|ID [NAME|ID...]

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值