1-Docker Engine 安装前置环境配置

一、前置准备:创建虚拟机(VMware/VirtualBox)

这一步是硬件基础,以常用的 VMware Workstation 为例:

  1. 打开VMware → 新建虚拟机 → 选择「典型」→ 下一步

  2. 选择 CentOS 7/8 镜像文件(推荐CentOS 7,稳定兼容)

  3. 设置虚拟机名称、存储位置 → 分配CPU(2核)、内存(2G及以上)、硬盘(20G+)

  4. 完成创建,启动虚拟机开始安装系统


二、在虚拟机中安装CentOS操作系统

  1. 启动虚拟机后,选择 Install CentOS 7

  2. 语言选择中文 → 继续

  3. 关键配置:

    • 安装位置:自动分区即可

    • 网络和主机名:打开以太网(确保能联网)

  4. 设置root密码 → 等待安装完成 → 重启虚拟机


三、修改网络配置名(固定网卡名,避免混乱)

CentOS默认网卡名可能是 ens33 等,我们统一修改为标准格式:

  1. 编辑网卡配置文件(根据你的实际网卡名修改,默认ens33)
Bash 复制代码
# 编辑网卡配置
vi /etc/sysconfig/network-scripts/ifcfg-ens33
  1. 修改/添加以下配置(重点):
TOML 复制代码
# 固定网卡名为 eth0(可选,保持默认也可以)
NAME=eth0
DEVICE=eth0
# 开机自启
ONBOOT=yes
# 静态IP/动态IP(二选一,推荐静态)
BOOTPROTO=static
# 静态IP配置(根据你的虚拟机网关修改)
IPADDR=192.168.xxx.xxx
NETMASK=255.255.255.0
GATEWAY=192.168.xxx.2
DNS1=8.8.8.8
  1. 重命名网卡文件(和配置里的NAME一致)
Bash 复制代码
mv /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-eth0
  1. 重启网络服务
Bash 复制代码
systemctl restart network

四、禁用防火墙与SELinux(Docker必备要求)

1. 禁用防火墙

Bash 复制代码
# 临时关闭防火墙
systemctl stop firewalld
# 永久禁用防火墙(开机不自启)
systemctl disable firewalld
# 查看状态(显示dead即成功)
systemctl status firewalld

2. 禁用SELinux(安全组件,会拦截Docker)

Bash 复制代码
# 临时关闭
setenforce 0
# 永久关闭(修改配置文件,可以手动设置)
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

✅ 验证:执行 getenforce,显示 Disabled 即成功。


五、更改主机名(方便识别虚拟机)

Bash 复制代码
# 永久修改主机名(自定义名称,比如docker-server)
hostnamectl set-hostname docker-server
# 生效配置
bash
# 验证
hostname

六、更改时区设置(统一为上海时区)

Bash 复制代码
# 设置时区为亚洲/上海
timedatectl set-timezone Asia/Shanghai
# 验证时间
date

七、添加普通用户并赋予root权限(可选,提升安全性)

默认root用户权限过高,日常操作推荐使用普通用户,以下步骤创建普通用户并赋予root权限(全程命令可直接复制):

  1. 创建普通用户(自定义用户名,此处以dockeruser为例,可替换为自己想要的名称)
Bash 复制代码
# 创建用户,dockeruser为用户名,可自定义
useradd dockeruser
# 为该用户设置密码(输入命令后按提示输入密码,密码输入时不显示,输入完成回车即可)
passwd dockeruser
  1. 赋予该普通用户root权限(无需切换root即可执行高权限命令)
Bash 复制代码
# 改变文件权限
chmod u+w /etc/sudoers
# 编辑sudo配置文件
vi /etc/sudoers
# 在文件中找到 "root    ALL=(ALL)       ALL" 这一行,在下方添加如下内容(dockeruser替换为你创建的用户名)
dockeruser    ALL=(ALL)       ALL

# 保存后,改变文件权限
chmod u-w /etc/sudoers
  1. 验证权限是否生效
Bash 复制代码
# 切换到创建的普通用户
su - dockeruser
# 执行高权限命令(测试是否能正常使用sudo)
sudo systemctl status docker

✅ 验证:输入普通用户密码后,能正常显示Docker状态,无报错,即代表权限赋予成功。

⚠️ 注意:用户名可自定义(替换所有dockeruser即可),密码建议设置复杂一些,提升安全性;后续操作可使用该普通用户,执行高权限命令时前缀加sudo即可。

相关推荐
fiveym5 小时前
01 - iPXE + Clonezilla 网络装机原理解析
linux·运维·服务器·网络
虎头金猫5 小时前
如何在群晖NAS上通过Docker部署CloudSaver?群晖部署CloudSaver教程|聚合资源搜索并实现远程访问
运维·服务器·网络·python·docker·容器·pandas
反转180度6 小时前
Qt 6 + C++17 实现 SFTP 批量部署:工业设备运维工具实战解析
运维·c++·qt
雨辰AI7 小时前
RAG 知识库搭建:基于人大金仓构建信创运维问答机器人|全栈国产化落地完整版
运维·ai·机器人·ai编程
-今昭-7 小时前
Ansible
linux·运维·ansible
星野川崎2067 小时前
电商多店运维:云机长期挂机频繁掉线、账号无故风控原因剖析与解决方案
大数据·运维·云计算·电商
IT邦德9 小时前
Dify1.6基于ubuntu系统的部署实战
linux·运维·ubuntu
蓝速科技10 小时前
蓝速科技会议电子门牌规模化部署与运维成本实测
运维·科技
许彰午10 小时前
# allbytaskid——一个接口扛六个DataStore
运维·服务器·php
牛奶咖啡1310 小时前
AI助力运维——AIGC运维应用实践—Deepseek的介绍与本地部署选型
运维·人工智能·deepseek·deepseek能做什么·deepseek本地部署配置·本地部署选型避坑原则·本地部署的典型方案