当前位置: 首页 > article >正文

Linux Docker 安装与使用详细教程

一、Docker 概述1.1 什么是 DockerDocker 是一个开源的应用容器引擎基于 Go 语言开发并遵从 Apache2.0 协议开源。它可以让开发者将应用及其依赖打包到一个轻量级、可移植的容器中然后发布到任何流行的 Linux 机器上实现虚拟化。Docker 的核心价值一次构建、随处运行更快速的应用交付和部署更便捷的升级和扩缩容更简单的系统运维更高效的计算资源利用1.2 Docker 核心概念概念说明类比镜像 (Image)只读的模板用于创建容器类面向对象容器 (Container)镜像的运行实例可独立运行应用对象面向对象仓库 (Repository)集中存放镜像的场所代码仓库Docker 架构组件Docker 主机 (Host)执行 Docker 守护进程和容器的物理或虚拟机Docker 客户端 (Client)通过命令行与 Docker 守护进程通信Docker Registry存储镜像的服务如 Docker Hub、阿里云镜像仓库二、 环境准备与卸载旧版本系统要求Docker 支持以下 64 位 Linux 发行版CentOS 7/8 及更高版本Ubuntu 16.04 及更高版本Debian、Fedora 等主流发行版在安装之前建议先卸载系统中可能存在的旧版本 Docker以避免冲突。# 更新包索引 sudo apt-get update # Ubuntu/Debian # 或 sudo yum update # CentOS/RHEL # 卸载可能存在的旧版本 sudo apt-get remove -y docker docker-engine docker.io containerd runc # 或 CentOS 命令 sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine三、 安装 Docker 引擎根据你的 Linux 发行版选择以下任一种方式进行安装。方法 AUbuntu/Debian 安装步骤# 1. 安装依赖包 sudo apt-get install -y ca-certificates curl gnupg lsb-release # 2. 添加官方 GPG 密钥 sudo mkdir -p /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg # 3. 设置稳定版仓库 echo \ deb [arch$(dpkg --print-architecture) signed-by/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable | sudo tee /etc/apt/sources.list.d/docker.list /dev/null # 4. 安装 Docker Engine、CLI、Containerd sudo apt-get update sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin方法 BCentOS/RHEL 安装步骤# 1. 安装 yum-utils 工具 sudo yum install -y yum-utils # 2. 配置 Docker 稳定版仓库 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo # 3. 安装 Docker 引擎及插件 sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin # 4. 启动并设置开机自启 sudo systemctl start docker sudo systemctl enable docker方法 C一键脚本安装通用推荐如果不想手动配置可以使用官方或国内源的一键脚本# 官方脚本海外服务器使用 curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh # 阿里云脚本国内推荐 curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun四、配置镜像加速推荐由于 Docker Hub 的官方镜像位于海外国内拉取镜像速度较慢。建议配置阿里云或华为云的镜像加速器。获取加速器地址登录 阿里云容器镜像服务控制台。在“实例设置”或“镜像工具”中找到“镜像加速器”复制你的专属地址如https://xxxx.mirror.aliyuncs.com。配置 Docker Daemon创建或编辑配置文件/etc/docker/daemon.jsonsudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json -EOF { registry-mirrors: [ https://xxxx.mirror.aliyuncs.com, // 替换为你的阿里云加速地址 https://docker.mirrors.ustc.edu.cn, // 中科大备用 https://hub-mirror.c.163.com // 网易备用 ] } EOF重启 Docker 生效sudo systemctl daemon-reload sudo systemctl restart docker五、免 sudo 权限配置为了避免每次运行docker命令都需要加sudo将当前用户加入docker用户组# 创建 docker 组如果不存在 sudo groupadd docker # 将当前用户加入 docker 组 sudo usermod -aG docker $USER # 刷新组权限或重新登录终端 newgrp docker六、核心概念与常用命令Docker 的核心概念包括镜像 (Image)、容器 (Container)和仓库 (Repository)。镜像管理命令命令说明示例docker images查看本地所有镜像docker imagesdocker pull从仓库拉取镜像docker pull nginx:latestdocker search搜索镜像docker search redisdocker rmi删除本地镜像docker rmi nginx容器管理命令命令说明示例docker run创建并启动容器docker run -d -p 80:80 --name my-nginx nginxdocker ps查看运行中的容器docker psdocker ps -a查看所有容器含停止的docker ps -adocker stop停止容器docker stop my-nginxdocker start启动已停止的容器docker start my-nginxdocker rm删除已停止的容器docker rm my-nginxdocker exec进入运行中的容器docker exec -it my-nginx /bin/bash七、实战部署 Nginx 服务通过一个简单的例子验证安装是否成功。拉取 Nginx 镜像docker pull nginx:latest启动容器docker run -d \ --name my-web \ -p 8080:80 \ -v $(pwd)/html:/usr/share/nginx/html \ nginx-d后台守护进程运行。-p 8080:80将宿主机的 8080 端口映射到容器的 80 端口。-v挂载本地目录实现数据持久化。验证在浏览器访问http://你的服务器IP:8080如果看到 Welcome to nginx! 页面说明部署成功。八、进阶使用 Docker Compose对于微服务架构通常需要同时启动多个容器如 Web MySQL。使用Docker Compose可以通过一个 YAML 文件定义和运行多容器应用。1、安装 Docker Compose 插件通常在安装引擎时已包含如未安装# 安装最新版 Compose 插件 DOCKER_CONFIG${DOCKER_CONFIG:-$HOME/.docker} mkdir -p $DOCKER_CONFIG/cli-plugins curl -SL https://github.com/docker/compose/releases/latest/download/docker-compose-linux-x86_64 -o $DOCKER_CONFIG/cli-plugins/docker-compose chmod x $DOCKER_CONFIG/cli-plugins/docker-compose2、创建docker-compose.ymlversion: 3 services: web: image: nginx:latest ports: - 8080:80 volumes: - ./html:/usr/share/nginx/html db: image: mysql:8.0 environment: MYSQL_ROOT_PASSWORD: example3、启动应用docker compose up -d这将以后台模式启动 Nginx 和 MySQL 两个容器。九、常见问题排查权限被拒绝如果提示Got permission denied while trying to connect to the Docker daemon socket请检查是否执行了sudo usermod -aG docker $USER并重新登录终端。镜像拉取慢请务必检查/etc/docker/daemon.json文件中的镜像加速器配置是否正确并执行了systemctl restart docker。端口冲突如果提示port is already allocated说明宿主机端口被占用请更换映射端口如-p 8081:80。

相关文章:

Linux Docker 安装与使用详细教程

一、Docker 概述 1.1 什么是 Docker? Docker 是一个开源的应用容器引擎,基于 Go 语言开发并遵从 Apache2.0 协议开源。它可以让开发者将应用及其依赖打包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,实现虚…...

Phi-4-mini-reasoning推理模型快速入门:Docker一键部署全攻略

Phi-4-mini-reasoning推理模型快速入门:Docker一键部署全攻略 1. 认识Phi-4-mini-reasoning推理模型 Phi-4-mini-reasoning是微软推出的轻量级开源推理模型,专为数学推理、逻辑推导和多步解题等强逻辑任务设计。这个3.8B参数的模型虽然体积小巧&#x…...

Browser.html快速入门:5分钟搭建你的第一个HTML浏览器

Browser.html快速入门:5分钟搭建你的第一个HTML浏览器 【免费下载链接】browserhtml Experimental Servo browser built in HTML 项目地址: https://gitcode.com/gh_mirrors/br/browserhtml Browser.html是一个基于HTML构建的实验性浏览器项目,它…...

如何快速入门网络自动化:awesome-network-automation新手教程

如何快速入门网络自动化:awesome-network-automation新手教程 【免费下载链接】awesome-network-automation Curated Awesome list about Network Automation 项目地址: https://gitcode.com/gh_mirrors/aw/awesome-network-automation 网络自动化是网络基础…...

革命性文件传输神器react-native-fetch-blob:告别BASE64性能瓶颈的终极指南

革命性文件传输神器react-native-fetch-blob:告别BASE64性能瓶颈的终极指南 【免费下载链接】react-native-fetch-blob A project committed to making file access and data transfer easier, efficient for React Native developers. 项目地址: https://gitcode…...

Scio REPL交互式编程:快速原型开发和数据分析的终极指南

Scio REPL交互式编程:快速原型开发和数据分析的终极指南 【免费下载链接】scio A Scala API for Apache Beam and Google Cloud Dataflow. 项目地址: https://gitcode.com/gh_mirrors/sc/scio Scio REPL交互式编程是Apache Beam和Google Cloud Dataflow的Sca…...

FastAPI子应用挂载:别再让root_path坑你一夜舶

Julia(julialang.org)由Stefan Karpinski、Jeff Bezanson等在2009年创建,目标是融合Python的易用性、C的高性能、R的统计能力、Matlab的科学计算生态。 其核心设计哲学是: 高性能:编译型语言(JIT&#xff0…...

Scio与Google Cloud Dataflow集成:构建可扩展大数据解决方案

Scio与Google Cloud Dataflow集成:构建可扩展大数据解决方案 【免费下载链接】scio A Scala API for Apache Beam and Google Cloud Dataflow. 项目地址: https://gitcode.com/gh_mirrors/sc/scio Scio是一个基于Apache Beam的Scala API,专为Goog…...

终极指南:如何构建高可用AITemplate推理服务的跨区域灾备方案

终极指南:如何构建高可用AITemplate推理服务的跨区域灾备方案 【免费下载链接】AITemplate AITemplate is a Python framework which renders neural network into high performance CUDA/HIP C code. Specialized for FP16 TensorCore (NVIDIA GPU) and MatrixCore…...

GPT-6 Spud倒计时×AI格局变局:2026年4月第一周全景扫描

上一篇 OpenClaw生态模型使用量全景:国产模型主导12.96万亿Token时代 下一篇 GPT-6 Spud深度解析:Symphony架构、双系统推理与OpenAI的AGI豪赌 摘要 2026年4月第一周(3月31日至4月6日),AI行业迎来密集动态&#xff1a…...

Outlook无法添加共享邮箱怎么办?一篇文章教你完成共享邮箱添加与发送配置

🔥个人主页:杨利杰YJlio❄️个人专栏:《Sysinternals实战教程》《Windows PowerShell 实战》《WINDOWS教程》《IOS教程》《微信助手》《锤子助手》 《Python》 《Kali Linux》《那些年未解决的Windows疑难杂症》🌟 让复杂的事情更…...

Redis命令处理机制源码探究疗

一、项目背景与核心价值 1. 解决的核心痛点 Navicat的数据库连接密码并非明文存储,而是通过AES算法加密后写入.ncx格式的XML配置文件中。一旦用户忘记密码,常规方式只能重新配置连接,效率极低。本项目只作为学习研究使用,不做其他…...

三步解决Fiji在macOS系统的启动故障问题

三步解决Fiji在macOS系统的启动故障问题 【免费下载链接】fiji A "batteries-included" distribution of ImageJ :battery: 项目地址: https://gitcode.com/gh_mirrors/fi/fiji Fiji作为ImageJ的"开箱即用"发行版,整合了大量生物图像处理…...

如何打造终极纯净阅读体验:ReadCat免费开源小说阅读器完整指南

如何打造终极纯净阅读体验:ReadCat免费开源小说阅读器完整指南 【免费下载链接】read-cat 一款免费、开源、简洁、纯净、无广告的小说阅读器 项目地址: https://gitcode.com/gh_mirrors/re/read-cat 在数字阅读应用泛滥的今天,ReadCat免费开源小说…...

gitru:一个由 Rust 打造的零依赖 Git 提交信息校验工具蚕

一、项目背景与核心价值 1. 解决的核心痛点 Navicat的数据库连接密码并非明文存储,而是通过AES算法加密后写入.ncx格式的XML配置文件中。一旦用户忘记密码,常规方式只能重新配置连接,效率极低。本项目只作为学习研究使用,不做其他…...

使用Spring AI Alibaba构建智能体Agent倥

背景 在软件开发的漫长旅途中,"构建"这个词往往让人又爱又恨。爱的是,一键点击,代码变成产品,那是程序员最迷人的时刻;恨的是,维护那一堆乱糟糟的构建脚本,简直是噩梦。 在很多项目中…...

PHP 8.9 JIT调试稀缺资源包首发:含自研jit-trace-analyzer工具链、12个真实微服务JIT崩溃core dump样本(限前500名下载)

第一章:PHP 8.9 JIT调试稀缺资源包发布说明 PHP 社区正式发布首个面向 PHP 8.9(开发代号“Vesuvius”)的 JIT 调试资源包(JIT Debug Resource Pack, JD-RP v0.1.0),专为深度分析 OPCache JIT 编译行为、寄存…...

OpCore-Simplify:零基础也能轻松制作黑苹果EFI的终极指南

OpCore-Simplify:零基础也能轻松制作黑苹果EFI的终极指南 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 还在为复杂的黑苹果配置而烦恼吗…...

League-Toolkit:英雄联盟客户端终极自动化工具与数据分析平台完整指南

League-Toolkit:英雄联盟客户端终极自动化工具与数据分析平台完整指南 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power 🚀. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit League-Tool…...

如何通过Win11Debloat解决Windows系统卡顿与隐私泄露问题

如何通过Win11Debloat解决Windows系统卡顿与隐私泄露问题 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to declutter and customize …...

FanControl深度配置指南:解决Windows散热控制三大痛点

FanControl深度配置指南:解决Windows散热控制三大痛点 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trending/fa…...

如何高效管理全面战争MOD?虎符台Legion Seal终极指南

如何高效管理全面战争MOD?虎符台Legion Seal终极指南 【免费下载链接】legion-seal 虎符台/Legion Seal,全面战争游戏MOD管理器,技术栈:Tauri 2 Vue TailwindCSS 项目地址: https://gitcode.com/zeyl/legion-seal 前言&a…...

如何高效管理全面战争MOD:虎符台/Legion Seal完整指南

如何高效管理全面战争MOD:虎符台/Legion Seal完整指南 【免费下载链接】legion-seal 虎符台/Legion Seal,全面战争游戏MOD管理器,技术栈:Tauri 2 Vue TailwindCSS 项目地址: https://gitcode.com/zeyl/legion-seal 前言&…...

3个革新性步骤:Cursor Free VIP突破AI编程助手使用限制

3个革新性步骤:Cursor Free VIP突破AI编程助手使用限制 【免费下载链接】cursor-free-vip [Support 0.45](Multi Language 多语言)自动注册 Cursor Ai ,自动重置机器ID , 免费升级使用Pro 功能: Youve reached your tr…...

FreakStudio滞

环境安装 pip install keystone-engine capstone unicorn 这3个工具用法极其简单,下面通过示例来演示其用法。 Keystone 示例 from keystone import * CODE b"INC ECX; ADD EDX, ECX" try: ks Ks(KS_ARCH_X86, KS_MODE_64) encoding, count ks.…...

剑指offer-61、序列化二叉树

请实现两个函数,分别⽤来序列化和反序列化⼆叉树⼆叉树的序列化是指:把⼀棵⼆叉树按照某种遍历⽅式的结果以某种格式保存为字符串,从⽽使得内存中建⽴起来的⼆叉树可以持久保存。序列化可以基于先序、中序、后序、层序的⼆叉树遍历⽅式来进⾏…...

高效实战:AdvancedSessionsPlugin多玩家管理解决方案全解析

高效实战:AdvancedSessionsPlugin多玩家管理解决方案全解析 【免费下载链接】AdvancedSessionsPlugin Advanced Sessions Plugin for UE4 项目地址: https://gitcode.com/gh_mirrors/ad/AdvancedSessionsPlugin 在虚幻引擎开发中,如何快速构建稳定…...

并查集计算

学习视频: 并查集入门讲解(路径压缩)_哔哩哔哩_bilibili 【并查集2】相似度计算_哔哩哔哩_bilibili...

3个理由告诉你,为什么Mac用户需要Turbo Boost Switcher这个终极性能控制工具

3个理由告诉你,为什么Mac用户需要Turbo Boost Switcher这个终极性能控制工具 【免费下载链接】Turbo-Boost-Switcher Turbo Boost disabler / enable app for Mac OS X 项目地址: https://gitcode.com/gh_mirrors/tu/Turbo-Boost-Switcher Turbo Boost Switc…...

终极指南:如何在Sublime Text 4中打造专业级Python IDE环境

终极指南:如何在Sublime Text 4中打造专业级Python IDE环境 【免费下载链接】anaconda Anaconda turns your Sublime Text 3 in a full featured Python development IDE including autocompletion, code linting, IDE features, autopep8 formating, McCabe comple…...