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打包等。

相关推荐
测试开发Kevin21 分钟前
详解Jenkins Pipeline 中git 命令的使用方法
运维·jenkins
什么半岛铁盒28 分钟前
Linux线程与进程关系及底层实现
java·linux·运维
yunken2834 分钟前
docker容器保存为不依赖基础镜像的独立镜像方法
java·docker·容器
langmeng1101 小时前
使用docker在3台服务器上搭建基于版本redis 6.x的一主两从模式
运维·redis·docker·容器·集群
jllllyuz1 小时前
如何为服务器生成TLS证书
运维·服务器·数据库
简朴-ocean1 小时前
如何删除linux空的文件夹
linux·运维·服务器
leblancAndSherry2 小时前
Gitlab + Jenkins 实现 CICD
linux·运维·docker·kubernetes·gitlab·jenkins
半桔3 小时前
【Linux手册】探秘系统世界:从用户交互到硬件底层的全链路工作之旅
linux·运维·服务器·面试·centos
wanhengidc3 小时前
服务器中CC攻击的特点有哪些?
运维·服务器
小杜的生信筆記3 小时前
生信服务器 | 做生信为什么推荐使用Linux服务器?
linux·运维·服务器