【Docker】Docker基础

文章目录

安装

shell 复制代码
# 卸载旧版本
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
# 设置存储库
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 安装 Docker 引擎
sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# 启动 Docker
sudo systemctl start docker
# 通过运行映像验证 Docker 引擎安装是否成功
# 拉取helloworld镜像
docker pull hello-world
docker images
sudo docker run hello-world
shell 复制代码
systemctl startdocker 
# 卸载
systemctl stop docker 
yum remove docker-ce docker-ce-cli containerd.io
rm -rf /var/lib/docker
rm -rf /var/lib/containerd

重启

shell 复制代码
systemctl daemon-reload
systemctl restart docker

使用

帮助启动命令

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

镜像命令

shell 复制代码
docker images
各个选项说明:
REPOSITORY:表示镜像的仓库源
TAG:镜像的标签版本号
IMAGE ID:镜像ID
CREATED:镜像创建时间
SIZE:镜像大小
 同一仓库源可以有多个 TAG版本,代表这个仓库源的不同个版本,我们使用 REPOSITORY:TAG 来定义不同的镜像。
如果你不指定一个镜像的版本标签,例如你只使用 ubuntu,docker 将默认使用 ubuntu:latest 镜像
-a :列出本地所有的镜像(含历史映像层)
-q :只显示镜像ID。
shell 复制代码
docker search 某个XXX镜像名字
https://hub.docker.com
docker search [OPTIONS] 镜像名字
docker search --limit 5 redis
shell 复制代码
# 查看镜像/容器/数据卷所占的空间
docker system df
shell 复制代码
docker rmi 某个XXX镜像名字ID
# 删除单个
docker rmi  -f 镜像ID
# 删除多个
docker rmi -f 镜像名1:TAG 镜像名2:TAG 
# 删除全部
docker rmi -f $(docker images -qa)

容器命令

有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)

shell 复制代码
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
 OPTIONS说明(常用):有些是一个减号,有些是两个减号
 
--name="容器新名字"       为容器指定一个名称;
-d: 后台运行容器并返回容器ID,也即启动守护式容器(后台运行);
 
-i:以交互模式运行容器,通常与 -t 同时使用;
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;
也即启动交互式容器(前台有伪终端,等待交互);
 
-P: 随机端口映射,大写P
-p: 指定端口映射,小写p
shell 复制代码
相关推荐
极客先躯5 小时前
高级java每日一道面试题-2026年05月03日-实战篇[Docker]-如何实现容器化环境的数据加密?
java·运维·docker·容器·金融·加解密·高级面试
程序喵大人10 小时前
【C++进阶】STL容器与迭代器 - 05 map 和 set 为什么按键保持有序
开发语言·c++·容器·迭代器·stl
风曦Kisaki12 小时前
Kubernetes(K8s)笔记Day03: Pod命名空间,标签,Pod 的调度,污点与容忍度,Pod 常见状态和重启策略,Pod 生命周期
linux·运维·笔记·docker·云原生·容器·kubernetes
张忠琳12 小时前
【NVIDIA】NVIDIA k8s-device-plugin v0.19.3 资源管理器模块深度分析之三
云原生·容器·架构·kubernetes·nvidia
毛驴赶鹿13 小时前
低配置服务器怎么搭建监控?Komari Docker部署与公网访问完整教程
运维·服务器·docker
Chengbei1113 小时前
云安全漏洞挖掘SKILL、一站式云漏洞挖掘工具,支持S3爆破、IMDS探测、K8s检测与AK/SK权限利用
前端·人工智能·网络安全·云原生·容器·kubernetes·系统安全
Ai拆代码的曹操15 小时前
K8s 调度器 predicate 阶段揭秘:为什么你的 Pod 总是堆在同一台机器
后端·容器
Ai拆代码的曹操15 小时前
手摸手排查:Pod CrashLoopBackOff 日志丢失问题,3 层兜底方案
后端·容器
张忠琳15 小时前
【NVIDIA】k8s-device-plugin v0.19.3 — CDI / MIG / vGPU 模块超深度代码分析之五
云原生·容器·架构·kubernetes·nvidia
冷莫溪16 小时前
Docker——3.Harbor 核心架构与原理详解
docker·容器·架构