docker使用(镜像、容器)

docker基础使用

文章目录


前言

dokcer的出现以及容器化技术的使用让我们能够更轻易的搭建环境和部署项目。

windows系统上通过docker desktop图形化工具可以简单直观的进行docker部署。

但是多数的项目是部署在linux服务器上,所以本篇介绍一些docker在linux上的基础使用方式。

这里演示时使用的操作系统是CentOS7


1.镜像操作

1.1命令介绍

  • docker search 镜像名:检索
  • docker pull 镜像名:镜像版本:下载
  • docker images:查看已有镜像
  • docker rmi 镜像名:镜像版本:删除已有镜像,其中镜像名和镜像版本可以换为镜像id

1.2.案例实操

1.2.1查找镜像

使用docker search 命令查找镜像只会显示最新版本的镜像,如果要安装镜像的其他版本,需要到dockerhub 上自行查找相关命令。

1.2.2下载镜像

使用docker pull 下载镜像

1.2.3查看当前镜像

使用docker images可以看到已下载镜像的名称、版本、下载时间、大小。

2.容器操作

2.1命令

2.1.1容器创建与启动

  • docker run 可选参数 镜像名 额外参数 :新建并启动容器。
    可以指定容器的名称、使用的镜像、端口映射、环境变量等。

例如,docker run -it --name my-nginx -p 8080:80 nginx 会创建一个名为my-nginx的容器,并将容器的80端口映射到主机的8080端口。该命令启动容器时,除了某些通用的可选参数外,还有一些镜像自己特有的参数,具体要看镜像文档说明。如果本地没找到对应的镜像,就会到hub中查找下载并运行。

2.1.2. 容器查看

  • docker ps:列出当前正在运行的容器。通过添加-a参数可以列出所有容器(包括历史运行过的容器)。
  • docker inspect:查看容器的详细信息,如配置、网络设置等。

2.1.3. 容器操作

  • docker start 容器名:启动已经停止的容器。
  • docker stop 容器名:停止正在运行的容器。
  • docker restart 容器名:重启容器。
  • docker kill 容器名:强制停止容器。

2.1.4. 容器删除

  • docker rm 容器名:删除已停止的容器。使用-f参数可以强制删除正在运行的容器。例如,docker rm -f $(docker ps -a -q) 会删除所有容器。

2.1.5. 容器日志

  • docker logs:查看容器的日志输出。使用-f参数可以实时查看日志。

2.1.6. 容器内文件操作

  • docker cp:在容器与主机之间拷贝文件。例如,docker cp 容器ID:容器内路径 主机路径 可以将容器内的文件拷贝到主机上。

2.1.7. 容器内命令执行

  • docker exec:在运行的容器中执行命令。例如,docker exec -it 容器ID /bin/bash 会在容器中启动一个新的bash会话。
  • docker attach:连接到正在运行的容器的标准输入输出流。与docker exec不同,docker attach会直接进入容器的当前终端会话,如果容器中没有正在运行的终端会话,则docker attach会失败。

2.1.8. 其他常用命令

  • docker top:查看容器内运行的进程。
  • docker port:列出容器的端口映射。
  • docker commit:从容器创建一个新的镜像。

2.2.实例

下面我们来演示一个实例------我们需要在云服务器上使用上一节下载的nginx镜像启动一个nginx容器,并使用它部署我们的网页到云服务器上。

2.2.1运行容器

这里把nginx容器的80端口映射到云服务器的80端口上,这样一来就可以访问云服务器的80端口来使用 nginx容器的服务。


docker run -d --name myginx -p 80:80 nginx

2.2.2查看容器


docker ps

2.2.3替换自己的页面

2.2.3.1进入容器交互界面

我们可以使用docker exec 来到容器内进行操作。

以下命令指定要操控myginx容器,并且以bash(命令行)的形式操控。

docker exec -it myginx /bin/bash

2.2.3.2修改默认页面

docker容器中的linux系统十分轻便,没有安装vim编辑器,所以只能使用原生的linux命令来进行修改

修改了一下容器中部署的index.html文件内容为:

chen,docker

于是成功替换nginx默认页内容.效果如下:

2.2.3.3退出容器操控界面

输入exit即可退出对当前容器的操控


总结

本章简单介绍了如何在linux中使用docker完成基础的容器创建和运行。

后面还会再华另外的文章介绍如何更进一步使用docker的目录挂载,卷映射,网络。

以及如何使用docker compose批量管理容器,如何使用docker file打包等。

相关推荐
锋丷6 分钟前
Docker安装 (centos)
docker·容器·centos
日月星辰Ace10 分钟前
蓝绿部署
运维·后端
余辉zmh14 分钟前
【Linux系统篇】:从匿名管道到命名管道--如何理解进程通信中的管道?
linux·运维·microsoft
小锋学长生活大爆炸18 分钟前
【教程】检查RDMA网卡状态和测试带宽 | 附测试脚本
运维·服务器·网络·ubuntu·网卡·rdma
程序设计实验室21 分钟前
Traefik,想说爱你不容易:一场动态反向代理的心累之旅
linux·docker·devops·traefik·caddy
may_一一36 分钟前
Jenkins插件下载慢解决办法
运维·jenkins
爱的叹息37 分钟前
AI应用开发平台 和 通用自动化工作流工具 的详细对比,涵盖定义、核心功能、典型工具、适用场景及优缺点分析
运维·人工智能·自动化
Pseudo…1 小时前
linux Shell编程之函数与数组(四)
linux·运维·服务器
杰瑞学AI1 小时前
Devops之GitOps:什么是Gitops,以及它有什么优势
运维·git·云原生·kubernetes·devops·argocd
写代码的小阿帆1 小时前
内网Windows挂载目录到公网服务器
运维·服务器