千家信息网

docker的hello-world镜像怎么运行

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,本篇内容介绍了"docker的hello-world镜像怎么运行"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够
千家信息网最后更新 2026年11月01日docker的hello-world镜像怎么运行

本篇内容介绍了"docker的hello-world镜像怎么运行"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

1. 介绍

下载hello-world这个镜像。

使用docker run命令。

比如:

$ docker run hello-world

主要是输出一些文本信息,然后就退出了。

使用docker ps可以查看容器的进程。

不过是空的,因为一运行就退出,只是输出信息,输出完就结束了。

可以使用docker ps -a来查看退出过的进程。

比如:

$ docker ps -aCONTAINER ID        IMAGE               COMMAND             CREATED              STATUS                          PORTS               NAMESb25a96c17bf4        hello-world         "/hello"            About a minute ago   Exited (0) About a minute ago                       mystifying_saha
2. 运行容器

上面只是演示hello world而已,我们运行些有用点的容器。

比如:

$ docker run -it ubuntu bash

运行的是ubuntu这个镜像,如果你的系统上没有这个镜像,会先下载下来。

bash是表示进入那个ubuntu的镜像的容器的shell,-t 选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上, -i 则让容器的标准输入保持打开。

这样就相当于进入了另一台ubuntu。

而且这个ubuntu跟你原来的系统是隔离的。

这样也没多大意义,我们经常会用docker来跑一些服务,比如web服务。

那就运行一个nginx容器试试。

$ docker run -d -p 80:80 --name webserver nginx

镜像名称是nginx,--name表示为这个容器取个名称叫webserver。

运行之后,你用docker ps查看一下容器。

$ docker psCONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                         NAMESa1d4b615709b        nginx               "nginx -g 'daemon ..."   5 seconds ago       Up 4 seconds        0.0.0.0:80->80/tcp, 443/tcp   webserver

然后你可以使用curl http://127.0.0.1查看一下,是否运行了nginx服务。

使用docker stop命令可以停止这个容器的运行。

比如:

$ docker stop webserver

停止之后输入docker ps发现是空的,这个时候要输入docker ps -a才能查看退出的容器。

可以使用下面这条命令,清除所有已退出的容器。

$ docker rm -f $(docker ps -a | grep Exit | awk '{ print $1 }')

之前运行nginx容器的时候,有使用-p 80:80这个参数。

这个表示端口映射。

解释前,我们先来改一下。

$ docker run -d -p 8080:80 --name webserver nginx

查看一下运行状态:

$ docker psCONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                           NAMES45e47ed889f8        nginx               "nginx -g 'daemon ..."   4 seconds ago       Up 3 seconds        443/tcp, 0.0.0.0:8080->80/tcp   webserver

现在你可以需要使用curl http://127.0.0.1:8080才能访问了。

也就是说,-p参数中,第一个端口是暴露在外面的端口,外面可以访问的端口。

至于-d嘛,就是以守护态运行。

有些应用根本就不需要暴露接口在外面,比如下面这个:

$ docker psmposenginx_gitlab_17e4493b736d2        sameersbn/postgresql:9.5-4   "/sbin/entrypoint.sh"    2 days ago          Up 2 days           5432/tcp                                                gitlabcomposenginx_postgresql_18cd6c90f9a52        sameersbn/redis:latest       "/sbin/entrypoint.sh "   2 days ago          Up 2 days           6379/tcp

这两个端口在外部是无法访问的,没有绑定在0.0.0.0这个ip上,这个有什么用呢。

其实有个参数是--link,供单机的容器之间打通一个网络通道,这样不必通过ip来访问,而是一个别名。

比如,先运行两个容器:

$ docker run --name gitlab-postgresql -d \    --env 'DB_NAME=gitlabhq_production' \    --env 'DB_USER=gitlab' --env 'DB_PASS=password' \    --env 'DB_EXTENSION=pg_trgm' \    --volume /srv/docker/gitlab/postgresql:/var/lib/postgresql \    sameersbn/postgresql:9.6-2$ docker run --name gitlab-redis -d \    --volume /srv/docker/gitlab/redis:/var/lib/redis \    sameersbn/redis:latest

这两个容器有两个名称,分别是gitlab-postgresql和gitlab-redis。

然后再启动一个暴露接口的容器,去连接这两个容器。

$ docker run --name gitlab -d \    --link gitlab-postgresql:postgresql --link gitlab-redis:redisio \    --publish 10022:22 --publish 10080:80 \    --env 'GITLAB_PORT=10080' --env 'GITLAB_SSH_PORT=10022' \    --env 'GITLAB_SECRETS_DB_KEY_BASE=long-and-random-alpha-numeric-string' \    --env 'GITLAB_SECRETS_SECRET_KEY_BASE=long-and-random-alpha-numeric-string' \    --env 'GITLAB_SECRETS_OTP_KEY_BASE=long-and-random-alpha-numeric-string' \    --volume /srv/docker/gitlab/gitlab:/home/git/data \    sameersbn/gitlab:8.16.6

其中postgresql和redisio是容器的主机别名。

使用docker restart命令可以重启容器。

还有一个参数比较常用,就是-rm,这个参数是说容器退出后随之将其删除。默认情况下,为了排障需求,退出的容器并不会立即删除,除非手动 docker rm 。我们这里只是随便执行个命令,看看结果,不需要排障和保留结果,因此使用 -rm 可以避免浪费空间。

"docker的hello-world镜像怎么运行"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

容器 运行 镜像 两个 参数 命令 端口 输入 输出 只是 名称 服务 信息 内容 别名 情况 接口 时候 更多 标准 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 精品咖啡豆 苏州找大状互联网科技有限公司 互联网科技开发公司 互联网科技金融公司 贷财互联网科技 互联网 视角下的科技创新 上海卓越科技 互联网 互联网科技咨询 深圳卡尔迅互联网科技有限公司怎么样 西藏七维空间互联网科技有限公司 天速互联网络科技有限公司 互联网科技与管理 华夏互联网科技业 如何创新互联网科技 互联网科技创新的路径 领航科技大厦互联网公司 有人说阿里系是互联网科技企业 2021世界互联网领先科技成果发布 恒生科技指数 中概互联网 株洲百竞科技的互联网营销顾问 远信互联网科技 中国互联网科技发展 上海电发互联网科技有限公司 山东大美朱楼互联网科技有限公司 银川新华互联网科技学校是国营吗 互联网科技手抄报图片 兰石爱特工业互联网科技分公司 绵阳真晨互联网科技有限公司 互联网科技博主张洲 长沙易易互联网科技有限公司
0