docoker是一只蓝色的小鲸鱼背上背了很多集装箱!
不知道你安装软件时有没有遇见这个情况某个软件版本高了导致你使用的软件无法运行
比如一个软件使用了python3,但是它可能只支持某一个版本段的python
如果该软件在你的电脑本地运行很显然如果你更新了最新版本python很可能导致该软件崩溃!oops!
还有就是你使用ubuntu他用Debian,他再用fedora,centos,你好不容易在一个操作系统安装了
一个软件难道在另一个操作系统再来一遍?
于是docker诞生了!
与操作系统不一样的是,操作系统虚拟的是物理硬件,而docker虚拟的是操作系统内核
你不需要为了隔离软件环境而装一个虚拟的操作系统只需要一个docker
1️⃣docker核心概念
image就是安装源 container就是运行的实例 volume很重要你的docker可以删除volume持久化存数据保护数据
compose也很重要,比如搭建一个博客可能用到nginx和postgresql等多个软件就可以使用compose一下多运行
registry就是软件仓库
2️⃣安装docker
对于linux选手直接去官网找一下一键安装脚本执行就可以了
然后我们要安装的是docker ce也就是Docker Engine-Community
对于windows和macos可以新建Linux虚拟机或者使用docker desktop
3️⃣使用docker一键部署单个软件
docker run -d \
--name postgres \
-e POSTGRES_PASSWORD=123456 \
-p 5432:5432 \
-v postgres_data:/var/lib/postgresql \
postgres:184️⃣使用docker compose组合一个大软件
不知道咋说大软件意思就是一个博客前端和后端可能用到许多软件然后给他们整合起来
你可以用一个 docker-compose.yml 管理整个项目:
services:
nginx:
image: nginx:latest
ports:
- "80:80"
- "443:443"
halo:
image: halohub/halo:latest
expose:
- "8090"
db:
image: postgres:18
environment:
POSTGRES_PASSWORD: your_password
volumes:
- db_data:/var/lib/postgresql
volumes:
db_data:5️⃣docker的常见使用
一、查看 Docker 状态
二、镜像管理(Image)
镜像相当于软件的安装模板。
三、容器管理(Container)
这是最常用的部分。
举例:创建并启动容器运行nginx
docker run -d \
--name nginx \
-p 8080:80 \
nginx参数解释:
-d:后台运行。--name:指定容器名称。-p:映射端口。nginx:使用的镜像。
四、Docker Compose(非常重要)
如果你要部署 Halo + PostgreSQL + Nginx
它可以通过一个 YAML 文件管理整个项目。
常见命令:
就先到这里了,后面还有些网络,数据整理,垃圾清理,yaml配置以后再说吧