Docker入门命令行

简介: Docker入门命令行

快速安装最新版 Docker

安装相关依赖
安装 Docker 所需的依赖:
yum install -y yum-utils device-mapper-persistent-data lvm2
添加 Docker 的 yum 源:
yum-config-manager --add-repo https://mirrors.cloud.tencent.com/docker-ce/linux/centos/docker-ce.repo

安装最新版的 Docker
yum 安装 Docker:
yum install -y docker-ce docker-ce-cli containerd.io
验证 Docker 版本以确认安装成功:
docker version

启动 Docker
执行以下命令启动 Docker:
systemctl start docker
然后将 Docker 设置为开机启动:
systemctl enable docker
查看 Docker 运行状态:
service docker status

配置镜像加速
创建 Docker 配置目录:
mkdir -p /etc/docker
配置 Docker 镜像加速源:
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://mirror.ccs.tencentyun.com"]
}
EOF
重启守护进程并重启 Docker:
systemctl daemon-reload && systemctl restart docker
重启完成后,镜像加速即配置成功。

运行 Docker 容器
运行第一个容器
使用 docker run 命令可以直接拉取镜像并运行一个容器,例如:
docker run --name=hello hello-world
这行命令会直接拉取 hello-world 镜像,然后运行一个 hello 容器,可以通过以下命令查看该容器的进程:
docker ps -a

拉取镜像
我们也可以一步一步来运行容器。以 calibre-web 为例,先拉取 Docker 镜像:
docker pull johngong/calibre-web
查看现有的镜像:
docker images

创建容器
镜像拉取成功后,根据镜像创建容器:
docker create --name=calibre-web -p 80:8083 -v /data/calibre-web/library:/library -e WEBLANGUAGE=zh_CN johngong/calibre-web
其中:
docker create 是创建容器的命令
--name=calibre-web 表示创建的容器的名称
-p 80:8083 表示该容器将 80 端口映射到 8083 端口
-v /data/calibre-web/librery:/libray 表示该容器将 /data/calibre-web/library 目录映射为 /library 目录
-e WEBLANGUAGE=zh_CN 表示该容器定义了一个变量,变量名是 WEBLANGUAGE,变量值是 zh_CN
johngong/calibre-web 是容器的镜像,这里也就是我们前面拉取的镜像

查看容器
使用如下命令可以查看现有的全部容器:
docker ps -a

与 docker run 不同的是,docker create 创建出来的容器不会直接运行。可以查看下运行中的容器进程:
docker ps

启动容器
使用以下命令启动刚才创建好的容器:
docker start calibre-web
查看容器进程:
docker ps

停止和删除 Docker 容器
停止容器
要停止正在运行的容器有两种方法。一种是 docker stop,例如:
docker stop calibre-web
使用 docker ps 命令可以看到,正在运行的容器中已经没有 calibre-web 了:
image
另一种方法是 docker kill,例如:
docker kill calibre-web
这两种方法的区别在于,docker stop 会给时间让容器保存最后的运行状态,而 docker kill 则会直接关闭容器。

删除终止状态的容器
使用 docker rm 命令可以删除指定的容器,例如:
docker rm hello

删除运行状态的容器
我们先重新运行 calibre-web 容器:
docker start calibre-web
这时候我们用 docker rm 删除该容器:
docker rm calibre-web
命令行会报错:

要删除运行状态的容器,需要带上 -f 选项:
docker rm -f calibre-web
正在运行的 calibre-web 会被强制停止并删除。

删除指定镜像
使用 docker rmi 命令可以删除指定的镜像,例如:
docker rmi hello-world
查看现有镜像:
docker images

删除所有镜像
我们可以通过 docker rmi 跟镜像 ID 来删除指定的镜像。而获取所有镜像 ID 的命令是:
docker images -q
如图所示,命令行列出了剩余所有镜像的 ID:
image
我们可以用这些 ID 一次性删除所有镜像:
docker rmi docker images -q

相关文章
|
10天前
|
Kubernetes Cloud Native Docker
云原生时代的容器化实践:Docker和Kubernetes入门
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术成为企业提升敏捷性和效率的关键。本篇文章将引导读者了解如何利用Docker进行容器化打包及部署,以及Kubernetes集群管理的基础操作,帮助初学者快速入门云原生的世界。通过实际案例分析,我们将深入探讨这些技术在现代IT架构中的应用与影响。
42 2
|
29天前
|
安全 Docker 容器
|
29天前
|
网络安全 数据安全/隐私保护 Docker
|
1月前
|
Kubernetes Cloud Native 云计算
云原生入门:从Docker到Kubernetes的旅程
【10月更文挑战第2天】本文将带你走进云原生的世界,从基础的Docker容器技术开始,逐步深入到Kubernetes集群管理。我们将通过实际代码示例,探索如何利用这些工具构建、部署和管理现代云应用。无论你是初学者还是有经验的开发者,这篇文章都将为你提供宝贵的知识和技能,让你在云原生领域迈出坚实的一步。
85 5
|
4天前
|
运维 Kubernetes Cloud Native
云原生技术入门:Kubernetes和Docker的协同工作
【10月更文挑战第43天】在云计算时代,云原生技术成为推动现代软件部署和运行的关键力量。本篇文章将带你了解云原生的基本概念,重点探讨Kubernetes和Docker如何协同工作以支持容器化应用的生命周期管理。通过实际代码示例,我们将展示如何在Kubernetes集群中部署和管理Docker容器,从而为初学者提供一条清晰的学习路径。
|
28天前
|
存储 监控 安全
|
12天前
|
Cloud Native 持续交付 Docker
Docker容器化技术:从入门到实践
Docker容器化技术:从入门到实践
|
18天前
|
运维 持续交付 虚拟化
docker入门详解!!!
本文介绍了容器技术的发展历程,从物理机到虚拟化再到容器化,重点讲解了Docker的诞生及其优势。Docker通过轻量级的容器技术,实现了资源的高效利用、快速启动、环境一致性、持续交付和部署等优点。文章还详细解析了Docker的架构和工作原理,包括Docker Daemon、REST接口、Docker Client等组件,以及容器与虚拟机的差异。
55 2
|
25天前
|
Kubernetes Cloud Native 开发者
云原生技术入门:Kubernetes和Docker的协作之旅
【10月更文挑战第22天】在数字化转型的浪潮中,云原生技术成为推动企业创新的重要力量。本文旨在通过浅显易懂的语言,引领读者步入云原生的世界,着重介绍Kubernetes和Docker如何携手打造弹性、可扩展的云环境。我们将从基础概念入手,逐步深入到它们在实际场景中的应用,以及如何简化部署和管理过程。文章不仅为初学者提供入门指南,还为有一定基础的开发者提供实践参考,共同探索云原生技术的无限可能。
37 3
|
28天前
|
存储 关系型数据库 MySQL