Docker简单命令

Docker概述

Docker为什么出现

开发-上线

部署环境-应用配置

开发-运维 版本更新导致服务不可用

开发即运维!

环境配置十分麻烦,每一个机器都需要部署环境(集群Redis)费时费力

发布一个项目(jar包+skd,环境,很多不能够跨平台)

传统:jar包,运维来做

现在:开发打包部署上线,一套流程做完!

Docker: 给以上问题提出了解决方案 镜像十分重要

Docker通过隔离机制可以将服务器利用到极致

vm : linux centos(原生镜像) 隔离需要开多个虚拟机 几个G|
docker ,隔离 镜像(最核心的环境)几个M

聊聊docker

Docker是基于go语言开发的

官网:https://www.docker.com/

Docker能干什么

容器化技术

容器化技术不是模拟一个完整的操作系统

比较Docker和虚拟机技术的不同

  • 传统虚拟机,虚拟出一条硬件,运行一个完整的操作系统,然后再这个系统上安装和运行软件

  • 容器内的应用直接允许再宿主机的内容,容器是没有自己的内核的,也没有虚拟我们的硬件,所以轻便

  • 每个容器是互相隔离,每个容器内都有一个属于自己的文件系统,互不影响

image-20250707125741722

Docker安装

Docker - 2. Docker 工作原理-CSDN博客

镜像(image):

docker镜像就好比是一个模板,可以通过这个模板来创建容器服务

通过这个镜像可以创建多个容器(最终服务运行或者项目运行就是再容器中的)

容器(container)

Docker利用容器技术,独立运行一个或者一组应用,通过镜像来创建的

启动,停止,删除,基本命令!

目前就可以把这个容器理解成为一个简易的Linux系统

仓库(repository)

仓库就是存放镜像的地方

仓库分为公有仓库和私有仓库

Docker Hub

阿里云 ....都有容器服务器(配置镜像加速)

 

安装Docker

环境准备

  1. 需要会一点点Linux

  2. CentOS7

  3. 我们使用Xshell连接远程服务器进行操作

环境查看

看文档吧

 

阿里云镜像加速

阿里云镜像加速器

选择镜像容器服务,选择镜像加速器

配置使用里面的命令

底层原理

Docker是怎么工作的?

Docker是一个CLient -Server 结构的系统, Docker的守护进程运行在主机上,通过Socket从客户端访问!

DockerServer接收到Docker-Client 的指令,就会执行这个命令

Docker为什么比VM快

  1. Docker有比VM更少的抽象层

  2. docker利用的是宿主机的内核,vm需要的是Guest OS

所以说,新建一个容器的时候,Docker不需要像虚拟机一样加载一个操作系统内核,避免引导。

docker是利用宿主机的操作系统,省略了这个复杂的过程,秒级启动

Docker的常用命令

帮助命令

docker version      #显示docker版本
docker info #显示docker的系统信息,包括镜像和容器的数量
docker 命令 --help #万能命令

帮助文档地址:https://docs.docker.com/reference/

镜像命令

docker images

docker images --help 当前常用命令
-a #列出所有镜像
-q #显示镜像id
-aq #显示所有的镜像id

docker search搜索镜像

docker search mysql #搜索mysql镜像
docker search --help #显示这个命令详情

docker pull 下载镜像

docker pull mysql #下载MySQL镜像 默认使用最新版
docker pull 镜像名[:tag]
#指定版本下载
docker pull mysql 5.7

docker rmi 删除镜像

docker rmi -f id  #删除指定id的镜像

docker rmi -f id id id #删除指定的多个镜像

docker rmi -f docker images -aq #删除全部的容器

容器命令

说明 :我们有了镜像才可以创建容器,Linux ,下载一个centos镜像来学习

docker pull centos

新建容器并启动

docker run [可选参数] image

#参数说明
--name="Name" 容器名字 tomcat01
-d 后台方式运行
-it 使用交互方式运行,进入容器查看内容
-p 指定容器的端口 -p 8080:8080
-p 主机端口:容器端口
-p 容器端口
容器端口
-P 随机指定端口
#启动并进入容器
docker run -it centos /bin/bash
ls 查看容器内的centos

exit #退出

查看当前运行的Docker

docker ps #查看运行的docker
docker ps -a #列出当前正在运行的容器+带出历史运行过的容器
docker ps -n #显示最近创建的容器
docker ps -aq #显示所有运行的容器

退出容器

exit # 直接容器停止并退出
ctrl + P + Q #容器不停止退出

 

删除容器

docker rm 容器id      #删除指定的容器,不能删除正在运行的容器,如果要强制删除rm -f
docker rm -f $(docker ps -aq) #删除所有的容器
docker ps -a -q|xargs docker rm #删除所有的容器

启动和停止容器的操做

docker start 容器id       #启动容器
docker restart 容器id #重启容器
docker stop 容器id #停止当期正在运行的容器
docker kill 容器id #强制停止指定容器
 
posted @ 2025-07-07 21:27  翀翀翀  阅读(15)  评论(0)    收藏  举报