【操作系统】Docker如何使用-续

文章目录

1、概述

在使用Docker的过程中,掌握常用的命令是至关重要的。然而,随着时间的推移,我们可能会遗忘一些关键的命令或对其用法变得模糊。为了帮助您更好地理解和记忆Docker的核心命令,本文将对Docker的基础操作进行详细的梳理和巩固。

之前写过一篇docker的文章:【操作系统】Docker如何使用

2、巩固知识

2.1、基础命令

查看Docker版本

bash 复制代码
docker --version

此命令用于查看当前安装的Docker版本信息。

检查Docker服务状态

bash 复制代码
sudo systemctl status docker

在Linux系统上,您可以使用此命令来检查Docker服务的运行状态。

启动和停止Docker服务

bash 复制代码
sudo systemctl start docker   # 启动Docker服务

sudo systemctl stop docker    # 停止Docker服务

拉取镜像

bash 复制代码
docker pull <镜像名>:<标签>

例如,拉取最新版本的Ubuntu镜像:

bash 复制代码
docker pull ubuntu:latest

列出本地镜像

bash 复制代码
docker images

此命令将显示本地存储的所有Docker镜像。

2.2、容器管理

运行容器

bash 复制代码
docker run -it <镜像名>:<标签> /bin/bash

例如,运行Ubuntu容器并进入交互式bash会话:

bash 复制代码
docker run -it ubuntu:latest /bin/bash

列出正在运行的容器

bash 复制代码
docker ps

要列出所有容器(包括已停止的),可以使用:

bash 复制代码
docker ps -a

停止容器

bash 复制代码
docker stop <容器ID或名称>

删除容器

bash 复制代码
docker rm <容器ID或名称>

如果要删除所有已停止的容器,可以使用:

bash 复制代码
docker container prune

进入已运行的容器

bash 复制代码
docker exec -it <容器ID或名称> /bin/bash

2.3、镜像管理

构建镜像

bash 复制代码
docker build -t <镜像名>:<标签> <Dockerfile所在目录>

删除镜像

bash 复制代码
docker rmi <镜像ID或名称>

如果要删除所有未使用的镜像,可以使用:

bash 复制代码
docker image prune

导出镜像:

bash 复制代码
docker save -o <导出的文件名>.tar <镜像名>:<标签>

导入镜像:

bash 复制代码
docker load -i <导出的文件名>.tar

2.4、网络管理

查看Docker网络

bash 复制代码
docker network ls

创建自定义网络

bash 复制代码
docker network create <网络名>

将容器连接到网络

在运行容器时指定网络:

bash 复制代码
docker run -it --network=<网络名> <镜像名>:<标签> /bin/bash

2.5、Compose

Docker Compose是一个用于定义和运行多容器Docker应用程序的工具。使用docker-compose.yml文件可以方便地管理多个容器。

启动服务

bash 复制代码
docker-compose up

在后台启动服务

bash 复制代码
docker-compose up -d

停止服务

bash 复制代码
docker-compose down

查看服务日志

bash 复制代码
docker-compose logs

3、常用命令

列举当前所有镜像

bash 复制代码
docker images

列举当前所有正在运行的容器

bash 复制代码
docker ps

停止某个正在运行的容器

bash 复制代码
docker stop szy

docker加载已经打包好的镜像包:

bash 复制代码
docker load -i /home/shazhenyu/桌面/hys-image-new.tar

从本地拷贝文件夹 到 docker的某个目录:

bash 复制代码
sudo docker cp -L /home/shazhenyu/桌面/index-qxtx szy2:/html

用命令行把镜像包拷贝到服务器的某个目录:

bash 复制代码
sudo scp nginx-image.tar shazhenyu@10.27.8.65:/home/shazhenyu

启动该镜像服务:

bash 复制代码
docker run -it e008cd03a260 /bin/bash

登录服务器

bash 复制代码
ssh shazhenyu@10.27.8.65

启动该镜像服务,并给这个镜像起一个名字,映射docker某端口到宿主机:

bash 复制代码
docker run -it --name szy  -p 50122:22 -p 5555:5555 -p 8087:8087 -d e008cd03a260 /bin/bash

提交这个镜像的名字改动,生成一个新镜像:

bash 复制代码
docker commit szy szy-image

删除某个镜像:

bash 复制代码
docker rmi -f e008cd03a260

清空Docker缓存:

bash 复制代码
docker system prune

保存docker镜像:

bash 复制代码
docker save -o nginx-image.tar nginx-image:latest
相关推荐
tiannian122029 分钟前
RFID资产管理系统投入产出全拆解:硬件、软件、部署、运维四笔账一次算清
运维·rfid·资产管理系统
我头发多我先学31 分钟前
Linux入门:简要认识Linux和基础指令
linux·运维·服务器
Urbano1 小时前
职业工装外套核心缝制工序自动化替代分析与多品牌设备选型报告
运维·自动化
逍遥德1 小时前
运维技术栈Linux+docker+Kubernetes+Jenkins/GitLab CI 知识点详细列表
linux·运维·docker
名字还没想好☜1 小时前
Kubernetes CrashLoopBackOff 排查全流程:从 describe 到日志到 exit code
运维·docker·云原生·容器·kubernetes
冰封之寂1 小时前
Docker 部署与基础命令详解:从安装到容器管理全流程指南
linux·运维·docker·容器
Baron X1 小时前
Gitea Docker 部署教程
docker·gitea
隔振消音专家2 小时前
冷水机组振动传导影响及专业化减振适配治理方案
大数据·运维
Brilliantwxx2 小时前
【Linux】 软件包管理器(yum)+ Vim使用
linux·运维·服务器·开发语言·编辑器·vim
skywalk81632 小时前
在FreeBSD的Uubntu兼容环境下安装Reasonix
linux·运维·freebsd