Docker01-安装Docker
Docker安装脚本
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum clean all
yum makecache
yum -y install docker-ce
systemctl start docker
systemctl enable docker
cat << EOF>> /etc/docker/daemon.json
{
"registry-mirrors": ["https://7xdlztz4.mirror.aliyuncs.com"]
}
EOF
systemctl daemon-reload
systemctl restart docker
systemctl enable docker
使用yum安装Docker
1.安装依赖
yum install -y yum-utils device-mapper-persistent-data lvm2
2.配置yum源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum clean all
yum makecache
3.安装docker
(旧版本的docker叫做docker或docker-engine)
yum -y install docker-ce
启动docker前关闭防火墙ß
systemctl start docker
systemctl enable docker
提示
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
4. 查看安装是否成功,有docker0说明环境部署完成
ifconfig
二进制安装Docker
1、下载二进制安装包
https://download.docker.com/linux/static/stable/x86_64/docker-20.10.0.tgz #docker官方镜像
https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/static/stable/x86_64/docker-20.10.0.tgz #清华大学镜像
https://mirrors.aliyun.com/docker-ce/linux/static/stable/x86_64/docker-20.10.0.tgz #阿里镜像
2、解压docker二进制包
tar zvfx ./docker-20.10.0.tgz -C /usr/local/
cd /usr/local/
mv docker docker-20.10.0
ln -s docker-20.10.0 docker
3、添加环境变量
vim /etc/profile
export PATH=$PATH:/usr/local/docker
source /etc/profile
4、添加启动服务脚本
vim /usr/lib/systemd/system/docker.service
[Unit]
Description=Docker Application Container Engine
Documentation=http://docs.docker.com
After=network.target
Wants=docker-storage-setup.service
[Service]
Type=notify
NotifyAccess=main
Environment=PATH=/usr/local/docker:/usr/bin:/usr/sbin
ExecStart=/usr/local/docker/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=1048576
LimitNPROC=1048576
LimitCORE=infinity
TimeoutStartSec=0
Restart=on-abnormal
KillMode=process
[Install]
WantedBy=multi-user.target
chmod +x /usr/lib/systemd/system/docker.service #给脚本加可执行权限
systemctl daemon-reload #重新加载服务的配置文件
很多时候在挂载磁盘后不想用docker默认目录,可用 -g 修改目录到指定目录 (docker默认目录是/var/lib/docker,包括pull下来的镜像都在该目录下)
ExecStart修改为:ExecStart=/usr/bin/dockerd -g /hengha/docker
5、启动docker服务
systemctl start docker.service #启动docker服务
6、查看docker相关信息
docker version #显示Docker版本信息
docker info #显示docker信息详情
配置镜像加速
cat << EOF>> /etc/docker/daemon.json
{
"registry-mirrors": ["https://7xdlztz4.mirror.aliyuncs.com"]
}
EOF
systemctl daemon-reload
systemctl restart docker
Docker容器和虚拟机有何不同
容器和虚拟机是互补的
功能上
- 虚拟机用来进行硬件资源划分,利用硬件虚拟化技术,例如VT-x、AMD-V或者privilegelevel(权限等级)和hypervisor层来实现对资源的彻底隔离
- 而容器则是操作系统级别的虚拟化,利用的是内核的Cgroup和Namespace特性,实现进程隔离
资源消耗上
- 虚拟机会独占分配给自己的资源,几乎不存在资源共享,各个虚拟机实例之间近乎完全隔离,因此虚拟机更加重量级,也会消耗更多的资源。
- Docker容器与主机共享操作系统内核,不同的容器之间可以共享部分系统资源,因此容器更加轻量级,消耗的资源也更少。
分类:
Docker
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)