「快学Docker」Docker简介、安装和Hello World实现

爱谁谁
发布: 2025-09-24 08:27:10
原创
777人浏览过

前言

docker已经成为了一门炙手可热的技术,每个程序员(特别是后端程序员)都应该学习下docker这门技术。

Docker是什么

来自官网的定义:Docker是以Docker容器为资源分割和调度的基本单位,封装了整个软件运行时环境,为开发者和系统管理员设计的,用于构建、发布和运行应用的平台。Docker是开源的,其基于Go语言开发。Docker通过操作系统内核技术(namespace、cgroups等内核、资源隔离技术)为容器提供资源隔离和安全保障。

Docker可以做什么

1、消除线上、线下的环境差异,保证了应用生命周期的环境一致性和标准化

2、版本化控制。可以像Git一样进行版本控制,版本回滚等。

3、高资源利用率和资源隔离。可以精确地为应用分配CPU、内存等资源,保证了应用间互不影响。

4、跨平台性。Docker将应用和其依赖的运行时环境打包成镜像,实现了“构建一次,到处运行”的理念。

5、等等等等~~~

Docker安装

Docker命令的执行一般都需要root权限,为了方便,所以下面的安装方式都是在root用户下进行的。非root用户需要在命令前添加sudo。

脚本安装方式(通用)

这种方式是通过下载脚本来安装的,是比较通用的一种安装方式。

代码语言:javascript代码运行次数:0运行复制
<code class="javascript"> curl -fsSL http://get.docker.com/ | sh复制代码</code>
登录后复制

执行结果如下:

「快学Docker」Docker简介、安装和Hello World实现

警告可以忽略它。一切正常的话,就可以启动我们的Docker了。

启动docker:

代码语言:javascript代码运行次数:0运行复制
<code class="javascript">systemctl start docker或者service docker start复制代码</code>
登录后复制
centos系统安装Docker-ce

移除老版本

快问AI
快问AI

AI学习神器,接入DeepSeek-R1

快问AI122
查看详情 快问AI
代码语言:javascript代码运行次数:0运行复制
<code class="javascript">$ sudo yum remove docker \                  docker-client \                  docker-client-latest \                  docker-common \                  docker-latest \                  docker-latest-logrotate \                  docker-logrotate \                  docker-engine复制代码</code>
登录后复制

安装docker ce

代码语言:javascript代码运行次数:0运行复制
<code class="javascript">$ sudo yum install -y yum-utils \  device-mapper-persistent-data \  lvm2复制代码</code>
登录后复制
代码语言:javascript代码运行次数:0运行复制
<code class="javascript">$ sudo yum-config-manager \    --add-repo \    https://download.docker.com/linux/centos/docker-ce.repo复制代码</code>
登录后复制
代码语言:javascript代码运行次数:0运行复制
<code class="javascript">sudo yum install docker-ce docker-ce-cli containerd.io复制代码</code>
登录后复制

详细的安装手册,大家可以参考官方文档。官方文档做了比较详细的说明。

非Linux系统

我推荐使用Linux系统来安装docker。如果想在windows、Mac上安装docker,可以使用docker for windows或者Desktop for Mac工具类解决吧。这里就不多说了。

docker-ce,docker-ee和docker-io的区别?

较旧版本的Docker称为docker或docker-engine或docker.io。新的docker分为两个版本,社区版(ce)和企业版(ee)。

所以,尽量不要通过yum -y install docker-io的方式来安装docker,因为这样安装到的是老版本的docker了。

Hello World实现

编程界的惯例,先来个Hello World体验下docker吧

搜索hello-world镜像代码语言:javascript代码运行次数:0运行复制
<code class="javascript"> docker search hello复制代码</code>
登录后复制
「快学Docker」Docker简介、安装和Hello World实现

可以看到有一个官方的hello world镜像。

获取hello-world镜像代码语言:javascript代码运行次数:0运行复制
<code class="javascript">docker pull hello-world复制代码</code>
登录后复制

输出结果:

代码语言:javascript代码运行次数:0运行复制
<code class="javascript">Using default tag: latestlatest: Pulling from library/hello-world1b930d010525: Pull completeDigest: sha256:41a65640635299bab090f783209c1e3a3f11934cf7756b09cb2f1e02147c6ed8Status: Downloaded newer image for hello-world:latest复制代码</code>
登录后复制
启动hello-world代码语言:javascript代码运行次数:0运行复制
<code class="javascript">docker run -it hello-world复制代码</code>
登录后复制

输出结果:

代码语言:javascript代码运行次数:0运行复制
<code class="javascript">Hello from Docker!This message shows that your installation appears to be working correctly.To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.    (amd64) 3. The Docker daemon created a new container from that image which runs the    executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it    to your terminal.To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bashShare images, automate workflows, and more with a free Docker ID: https://hub.docker.com/For more examples and ideas, visit: https://docs.docker.com/get-started/复制代码</code>
登录后复制

看第一行,输出了Hello from Docker!。这就是docker官方为我们准备的hello world实现了,大家也可以自己去体验一下。

总结

本文简单地介绍了Docker,并且介绍了Docker的安装方法和演示了docker官方提供的hello world实现。这里用到了一些docker命令,如search,pull,run,可以先不用理会它,后面再具体分析。

以上就是「快学Docker」Docker简介、安装和Hello World实现的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号