作者:watermelo617
涉及领域:Vue、SpingBoot、Docker、LLM、python等
-------------------------------------------------------------------------------------------------------------------------
--------------------------温柔地对待温柔的人,包容的三观就是最大的温柔。--------------------------
-------------------------------------------------------------------------------------------------------------------------
Docker 入门全攻略:安装、操作与常用命令指南一、引言 Docker 是一个开源的应用容器引擎,它允许开发者打包应用及其依赖到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
在当今快速发展的云计算和微服务架构中,Docker 以其轻量级和便携性,成为开发者和系统管理员的得力工具。Docker 不仅简化了应用的部署流程,还提高了应用的可移植性和可扩展性。本篇博客将带领你从 Docker 的下载和安装开始,一步步深入到 Docker 的基本概念和操作,最终通过实践案例来巩固你的学习成果。
二、Docker 下载与安装2.1 Docker 的系统要求 Docker 支持主流的操作系统,包括 Windows 10、macOS Sierra 以及各种 Linux 发行版。确保你的系统满足 Docker 的最低系统要求。
2.2 安装步骤 docker官网(别被百度前几位的广告骗了):https://www.docker.com/
安装其
①对于 Windows 的安装指南访问 Docker 官网下载 Docker Desktop for Windows。运行安装程序并按照提示完成安装。通过 Windows 搜索栏搜索并打开 Docker Desktop。②对于 macOS 的安装指南访问 Docker 官网下载 Docker Desktop for Mac。打开下载的 DMG 文件并拖动 Docker 到 Applications 文件夹。打开 Docker Desktop 应用并按照提示完成安装。③对于 Linux 的安装指南 以 Ubuntu 为例:
更新软件包索引:
代码语言:javascript代码运行次数:0运行复制sudo apt-get update 安装 Docker:
代码语言:javascript代码运行次数:0运行复制sudo apt-get install docker-ce docker-ce-cli containerd.io三、Docker 的基本概念3.1 镜像(Image) Docker 镜像是只读模板,它包含了运行应用所需的所有内容——代码、运行时、库、环境变量和配置文件。
对镜像的修改有两种方式:①根据镜像生成容器,修改容器后打包为新的镜像。②根据基础镜像和Dockerfile直接生成新的镜像。
3.2 容器(Container) 容器是镜像的运行实例。它是一个轻量级、可移植的、自给自足的软件运行环境。容器诞生于镜像,但是可以进一步修改,并且可以打包为新的镜像。
四、Docker 基本命令操作4.1 拉取镜像 使用以下命令从 Docker Hub 拉取 Ubuntu 镜像:
代码语言:javascript代码运行次数:0运行复制docker pull ubuntu4.2 列出镜像 查看本地所有镜像:
代码语言:javascript代码运行次数:0运行复制docker images4.3 运行容器 创建并启动一个基于 Ubuntu 镜像的容器:
代码语言:javascript代码运行次数:0运行复制docker run -it ubuntu4.4 打包容器 将正在运行的容器保存为新镜像:
代码语言:javascript代码运行次数:0运行复制docker commit [容器ID] [新镜像名]4.5 推送镜像 首先,你需要登录 Docker Hub(Docker Hub是docker官方的镜像仓库,但如果不使用科学上网方式有时候会难以访问):
代码语言:javascript代码运行次数:0运行复制docker login 然后推送镜像到 Docker Hub:
代码语言:javascript代码运行次数:0运行复制docker push [用户名]/[镜像名]4.6 启动和停止容器 启动一个已停止的容器:
代码语言:javascript代码运行次数:0运行复制docker start [容器ID或名称] 停止一个正在运行的容器:
代码语言:javascript代码运行次数:0运行复制docker stop [容器ID或名称]4.7 附加命令列出正在运行的容器:代码语言:javascript代码运行次数:0运行复制docker ps删除一个容器:代码语言:javascript代码运行次数:0运行复制docker rm [容器ID或名称]删除一个镜像:代码语言:javascript代码运行次数:0运行复制docker rmi [镜像ID或名称]五、一个简单的实操案例 假设我们需要部署一个简单的 Web 服务器。
5.1、创建 Dockerfile 创建一个包含以下内容的文件,命名为Dockerfile(没有文件拓展名!没有文件拓展名!没有文件拓展名!):
代码语言:javascript代码运行次数:0运行复制FROM nginx
COPY index.html /usr/share/nginx/html/ 其中index.html是你希望服务的网页文件。
5.2、构建镜像 在 Dockerfile 所在目录执行:
代码语言:javascript代码运行次数:0运行复制docker build -t my-nginx .5.3、运行容器代码语言:javascript代码运行次数:0运行复制docker run -d -p 8080:80 my-nginx 这将在后台启动一个容器,并将容器的 80 端口映射到宿主机的 8080 端口。
5.4、访问应用 在浏览器中访问 http://localhost:8080,你将看到部署的 Web 应用。
六、总结 Docker 的世界非常广阔,这只是一个开始,请继续探索和学习 Docker 的高级特性和最佳实践。后续也会继续更新相关的理论与实践内容。
只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~