别再用虚拟机了!5分钟在 Docker Desktop 里跑起你的第一个 CentOS 容器并配置开发环境
别再用虚拟机了5分钟在 Docker Desktop 里跑起你的第一个 CentOS 容器并配置开发环境还在为虚拟机卡顿、资源占用高而烦恼今天带你用 Docker Desktop 快速启动一个 CentOS 开发环境体验秒级启动的畅快感。相比传统虚拟机动辄几分钟的启动时间和 GB 级内存占用Docker 容器能在 5 秒内启动内存消耗仅为 MB 级别。下面我们就从零开始一步步搭建一个完整的开发环境。1. 为什么选择 Docker 替代虚拟机1.1 资源消耗对比传统虚拟机需要模拟完整的硬件环境每个虚拟机都运行着独立的操作系统内核。而 Docker 容器共享主机内核仅包含应用运行所需的用户空间组件。这种架构差异带来了显著的性能优势指标虚拟机Docker 容器启动时间1-5 分钟1-5 秒内存占用1-4GB50-300MB磁盘占用10-30GB100-500MB性能损耗15-20%1-3%提示对于开发环境搭建Docker 的轻量特性意味着你可以同时运行多个容器而不会拖慢主机性能。1.2 开发效率提升使用 Docker 开发环境有以下几个显著优势环境一致性容器配置可以通过 Dockerfile 固化团队成员间共享完全相同的环境快速重置遇到环境问题删除容器重新创建一个只需几秒钟隔离性每个项目可以使用独立的环境避免依赖冲突便携性开发好的环境可以轻松部署到测试和生产环境2. 快速开始运行你的第一个 CentOS 容器2.1 安装 Docker Desktop前往 Docker 官网 下载对应系统的安装包。安装过程简单直观双击下载的安装包按照向导完成安装安装完成后启动 Docker Desktop首次启动时Docker 会进行初始化状态栏图标变为绿色表示服务已就绪。2.2 配置镜像加速国内用户建议配置镜像加速以提升拉取速度。这里以阿里云镜像加速为例登录 阿里云容器镜像服务左侧菜单选择镜像加速器复制专属加速器地址然后在 Docker Desktop 设置中添加镜像地址{ registry-mirrors: [https://你的ID.mirror.aliyuncs.com] }2.3 拉取并运行 CentOS 镜像打开终端Windows 用户可使用 PowerShell 或 CMD执行以下命令# 拉取最新版 CentOS 镜像 docker pull centos # 以交互模式运行容器 docker run -it --name my_centos centos /bin/bash执行成功后你会看到一个全新的 CentOS 终端提示符。恭喜你已经成功运行了第一个 Docker 容器。3. 配置基础开发环境3.1 安装常用开发工具在容器内执行以下命令安装基础开发工具链# 更新软件包索引 yum update -y # 安装常用工具 yum install -y vim git wget curl gcc make python33.2 配置开发环境根据你的开发需求可以选择安装特定工具Python 开发环境配置# 安装 pip yum install -y python3-pip # 安装常用 Python 包 pip3 install numpy pandas flaskC/C 开发环境配置# 安装完整开发工具链 yum groupinstall -y Development Tools # 安装调试工具 yum install -y gdb valgrind4. 持久化你的开发环境默认情况下容器停止后所有更改都会丢失。下面介绍两种持久化方案4.1 使用数据卷Volume数据卷是 Docker 推荐的持久化方案# 创建数据卷 docker volume create my_volume # 运行容器并挂载数据卷 docker run -it --name dev_env -v my_volume:/data centos在容器内所有保存到/data目录的文件都会持久化。4.2 提交为自定义镜像如果你已经配置好了完美的开发环境可以将其保存为新镜像# 退出容器 exit # 提交更改 docker commit my_centos my_dev_env # 以后可以直接使用自定义镜像 docker run -it my_dev_env5. 进阶技巧端口映射与多容器协作5.1 端口映射要让容器内的服务可以被主机访问需要使用端口映射# 将容器的 80 端口映射到主机的 8080 端口 docker run -it -p 8080:80 centos5.2 多容器协作使用 Docker Compose 可以轻松管理多个关联容器。创建一个docker-compose.yml文件version: 3 services: web: image: nginx ports: - 8080:80 db: image: mysql environment: MYSQL_ROOT_PASSWORD: example然后运行docker-compose up6. 日常使用技巧6.1 常用命令速查命令说明docker ps查看运行中的容器docker ps -a查看所有容器包括停止的docker stop 容器ID停止容器docker start 容器ID启动已停止的容器docker rm 容器ID删除容器docker rmi 镜像名删除镜像docker exec -it 容器ID /bin/bash进入运行中的容器6.2 性能优化建议限制容器内存使用docker run -m 512m设置 CPU 限制docker run --cpus1.5使用.dockerignore文件减少构建上下文大小多阶段构建减小最终镜像体积在实际项目中我通常会为每个开发任务创建独立的容器这样既能保持环境整洁又能避免不同项目间的依赖冲突。遇到复杂的多服务项目时Docker Compose 是管理服务依赖的神器。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2539269.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!