2025最新版Docker讲解/面试/命令/容器化技术

弱小和无知不是生存的障碍,傲慢才是!

Docker是什么

++docker是一款由Go语言开发基于操作系统内核提供轻量虚拟化,在Docker安装的软件并不是真正安装在宿主机操作系统中,而是安装在容器的文件系统中(隔离环境),宿主机看不到这些安装,容器之间互不影响。++

镜像

镜像搜索

docker search

我在使用这个命令时,总是出现报错,也不是镜像源问题。但在命令上加上镜像就行了。

++docker search 镜像加速地址/[imageName]++

镜像下载

docker pull 镜像名:版本

镜像列表

docker images [-a]

镜像删除

docker rmi 镜像名:版本/镜像ID


容器操作

容器运行[创建+启动]

docker run [-d --name -p ]镜像名/镜像ID

默认同步启动后,-d[detach v.分离] 可后台启动,--name 后可指定容器名,-p进行宿主机与容器内部端口映射

容器启动[已存在容器]

docke start 容器名/ID

默认异步启动后

容器状态

docker++stats++ 容器名/ID

容器列表

docker ps

默认查看运行的容器,-a 查看全部容器

容器日志

docker logs 容器名/ID

容器停止

docker stop 容器名/ID [不可用镜像名]

容器重启

docker restart 容器名/ID

容器删除

docker rm 容器名/ID

-f强制删除

容器进入

docker exec++-it++ 容器名/ID ++/bin/bash++

-it 交互式,/bin/bash 命令行操作。进入容器单独文件系统

分享

容器提交

docker commit [-m 信息] 容器名/ID 镜像名:版本

-m 增加提交信息,提交到本机镜像中

镜像保存

docker save -o 压缩包名.tar 镜像名:ID/ID

镜像加载

docker load -i 压缩包路径

自动将压缩包转成docker镜像


以下推送,本人无法实现。请教....

登录

docker login

命名

docker tag 镜像名:版本/ID dockerhub用户名/自定义镜像名:版本

产生一个新的镜像,ID与之前镜像相同

推送

docker push 镜像名:版本

拉取

docker pull 用户名/镜像名:版本

数据共享

++为了避免进入容器内部文件系统的复杂结构,我们在创建容器的时候可以使用目录挂载,让宿主机与容器之间共享数据。++

目录挂载

以宿主机内容为准

docker run [-v 宿主机路径(/根路径开始)/容器路径] --name 自定义容器名 镜像名:版本/ID

卷映射

docker run [-v 宿主机路径/容器路径] --name 自定义容器名 镜像名:版本/ID

默认存在在宿主机/var/lib/docker/volumes/<volume-name>

容器通信

一般容器想要通信需要连接到宿主机ip,然后通过宿主机暴露的端口,在映射到别的容器。效率不高。

在我们docker内部有一个docker0网络,相当于一个局域网,每个容器都有自己的ip,我们可以直接通过他们的ip访问,但由于一些开关机会导致容器发生ip变化,所以这不是最佳选择。

我们可以自定义网络,通过容器名作为我们的ip

自定义网络

docker network create 网络名

然后在启动容器时

docker run ++-d++ -++-name 自定义容器名++ ++--newwork 网络名++ ++镜像:版本/ID++

docker compose批量启动

相关推荐
Dobby_051 小时前
【Ansible】变量与敏感数据管理:Vault加密与Facts采集详解
linux·运维·云原生·ansible
记忆不曾留1 小时前
unbuntu 20.04 docker 部署wordpress
运维·docker·容器·wordpress·独立站建站
zcz16071278211 小时前
服务器与客户端
运维·服务器
三五a2 小时前
Kubernetes
云原生·容器·kubernetes
xx.ii2 小时前
28.Linux :通过源代码编译安装lamp
linux·运维·服务器
焊锡与代码齐飞3 小时前
嵌入式第三十五课!!Linux下的网络编程
linux·运维·服务器·开发语言·网络·学习·算法
C-20023 小时前
kubernetes中pod的管理及优化
云原生·容器·kubernetes
照物华3 小时前
深入理解Kubernetes核心:标签与标签选择器实战解析
云原生·容器·kubernetes·k8s
2501_927773073 小时前
Linux操作系统编程——网络
linux·运维·网络
jiunian_cn4 小时前
【Linux】线程
android·linux·运维·c语言·c++·后端