美文网首页
Docker常用命令

Docker常用命令

作者: 轻轻敲醒沉睡的心灵 | 来源:发表于2023-04-02 18:49 被阅读0次

docker 一般使用命令操作,常见的命令需要熟悉。

1. Docker软件命令

    1. 启动docker: systemctl start docker
    1. 停止docker: systemctl stop docker
    1. 重启docker: systemctl restart docker
    1. 查看docker状态: systemctl status docker
    1. 开机启动: systemctl enable docker
    1. 查看docker概要信息: docker info
    1. 查看docker总体帮助文档: docker --help
    1. 查看docker命令帮助文档: docker 具体命令 --help

2. 镜像相关命令

    1. 列出本地主机上的镜像:docker images
# REPOSITORY:表示镜像的仓库源
# TAG:镜像的标签版本号
# IMAGE ID:镜像ID
# CREATED:镜像创建时间
# SIZE:镜像大小
# 同一仓库源可以有多个 TAG版本,代表这个仓库源的不同个版本,我们使用 REPOSITORY:TAG 来定义不同的镜像。
# 如果你不指定一个镜像的版本标签,例如你只使用 ubuntu,docker 将默认使用 ubuntu:latest 镜像
# 列出本地所有的镜像(含历史映像层)
docker images -a
# 只显示镜像ID
docker images -q
    1. 查找镜像:docker search XXX
# 网站
https://hub.docker.com
# --limit : 只列出N个镜像,默认25个
docker search --limit 5 redis
    1. 拉取镜像:docker pull XXX
# 默认拉取镜像版本:latest
docker pull ubuntu
# 指定版本(TAG):
docker pull mysql:8.0.7
    1. 删除镜像:docker rmi XXX
docker rmi debian
# 强制删除,有容器使用这个镜像时也能删
docker -f rmi debian
# 删除全部 --- 慎用,最好不用
·docker rmi -f $(docker images -qa)
    1. 查看镜像/容器/数据卷所占的空间:docker system df

3. 容器相关命令

    1. 启动容器 docker run
# 前台启动:以交互模式启动一个容器,启动完成后会进入容器,
docker run -it ubuntu /bin/bash
参数说明:
-i: 交互式操作。
-t: 终端。
ubuntu : ubuntu 镜像。
/bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。
要退出终端,直接输入 exit。

# 后台启动:守护式容器
docker run --restart=always --log-opt max-size=1000m --log-opt max-file=2 -p 6379:6379 --name redis5 -v /data/redis/redis.conf:/etc/redis/redis.conf -v /data/redis/data:/data -d redis:5.0.14 redis-server /etc/redis/redis.conf  --appendonly yes  --requirepass 123
参数说明:
--restart=always:自动重启
-p:端口映射。-p 宿主机端口(安装docker的电脑的端口):docker容器内部的端口
-v:目录卷映射。-v 宿主机目录:容器内部目录
-d:后台运行
--name:容器自定义的名字
--log-opt:日志相关
redis:5.0.14:镜像
redis-server /etc/redis/redis.conf  redis启动命令,并指定配置文件
--requirepass: 指定redis 密码
# 注意,上面启动命令,从redis-server往后,是redis特有的,其他镜像容器 不一定有
    1. 列出容器 docker ps
# 列出正在运行的容器
docker ps
# 列出所有容器
docker ps -a
# 列出最近创建的容器
docker ps -l
# 列出最近创建的n个容器
docker ps -n
    1. 退出容器
# run进去容器,exit退出,容器停止
exit
# run进去容器,ctrl+p+q退出,容器不停止
ctrl+p+q
    1. 进入容器
# 方法1 
docker exec -it 容器ID /bin/bash
# 方法2
docker attach 容器ID
# 区别:attach 直接进入容器启动命令的终端,不会启动新的进程 用exit退出,会导致容器的停止。
# exec 是在容器中打开新的终端,并且可以启动新的进程 用exit退出,不会导致容器的停止。
# ·推荐使用 docker exec 命令,因为退出容器终端,不会导致容器的停止。
    1. 容器启停
docker start 容器ID或者容器名称
docker stop 容器ID或者容器名称
docker restart 容器ID或者容器名称
# 强制停止容器
docker kill 容器ID或者容器名称
    1. 删除容器
docker rm 容器ID
# 一次性删除多个容器实例
docker rm -f $(docker ps -a -q)
docker ps -a -q | xargs docker rm
    1. 查看容器日志
docker logs [OPTIONS] 容器ID
[OPTIONS]
-f : 跟踪日志输出
-t : 显示时间戳
--tail :仅列出最新N条容器日志
--since:显示某个日期至今的所有日志

docker logs -f -t --tail 100 --since "2023-01-01" 1234567890abcdefg
    1. 查看容器内运行的进程
docker top 容器ID
    1. 查看容器内部细节
docker inspect 容器ID
    1. 从容器内拷贝文件到主机上
docker cp  容器ID:容器内路径 目的主机路径
    1. 导入和导出容器
# export 导出容器的内容留作为一个tar归档文件[对应import命令]
docker export 容器ID > 文件名.tar
# import 从tar包中的内容创建一个新的文件系统再导入为镜像[对应export]
cat 文件名.tar | docker import - 镜像用户/镜像名:镜像版本号

相关文章

网友评论

      本文标题:Docker常用命令

      本文链接:https://www.haomeiwen.com/subject/siufddtx.html