Docker入门(二)

简介: 上一节中,我们了解到了Docker 的一些基本知识点,它的一些核心概念,Docker的使用安装等。此篇文章我们对 Docker 进行入门讲解

重新启动已经停止的容器

例如,我使用docker ps命令没有发现容器正在启动

49.png

但是你可以使用 docker start cxuan_container 启动指定的container。

重新使用 docker ps 查看活跃的docker 容器


50.png

也可以直接根据container id进行启动,我先用 docker ps -a 查看一下所有的container

51.png


比如我想启动containerId 为 18178c34cd5a 这个容器,就直接使用 docker start 18178c34cd5a,启动完成后会直接输出 containerId。

52.png


重新查询现在正在运行的 docker container ,发现两个都在运行了

53.png


附着容器

Docker 容器重新启动的时候,会沿用docker run 命令时指定的参数来运行,因此我们容器重新启动后会运行一个交互式会话shell。此外,我们也可以用 docker attach命令,重新附着该容器到会话上

54.png


也可以通过 docker attach containerId 的方式附着到会话上,如下所示

55.png


如果退出 shell 进程,容器也会随之停止运行

创建守护式容器

除了这些交互式运行的容器,我们也可以创建长期运行的容器。守护式容器没有交互式会话,非常适合运行应用程序和服务。大多数情况下我们需要以守护式来运行我们的容器。下面我们创建一个守护式容器


56.png


上面的示例中使用了 -d ,因此 Docker 会将容器放在后台进行。

我们还在容器要运行的命令行里使用了一个 while 循环,该循环会一致打印 hello world 直到容器或者进程停止运行。

容器日志

上面的示例我们创建了一个 docker 的守护式进程,进程里面一直在使用 while 进行循环输出 hello world,为了探究容器内部都在做什么,我们使用docker logs 命令来获取容器的日志,如下

57.jpg


可以看到,其内部一直在做while 循环并输出 hello world,Docker 会输出最后几条日志并返回,我们可以使用 -f 参数来监控Docker 的日志,这与 tail -f 命令非常像

58.png


我们在日志的循环输出中加了几个空行,能让你直观的感受到我们正在监控 docker 日志的运行过程,你可以使用 control + c 来退出监控。

我们也可以跟踪日志的某一片段,例如,可以使用 docker logs --tail 10 daemon_dave获取日志的最后10行内容。另外,也可以使用 docker logs --tail 0 -f daemon_dave 命令来追踪某个容器的最新日志而不必读取整个日志文件


59.jpg


追踪最新日志:

60.jpg


其实可以看到,日志一直在循环输出,没有显示之前的日志信息。

为了让调试更加简单,我们可以使用 -t 来为每条日志加上时间戳,如下

61.jpg


            </div>
相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
目录
相关文章
|
9月前
|
弹性计算 Linux 数据安全/隐私保护
阿里云幻兽帕鲁联机服务器搭建全攻略,速来抄作业!2025新版教程
阿里云提供2025年最新幻兽帕鲁服务器申请购买及一键开服教程。4核16G配置支持8人,70元/月;8核32G配置支持20人,160元/月。选择配置、地域、操作系统后,点击【一键购买及部署】,约3分钟完成创建。本地安装STEAM客户端并登录,进入游戏选择多人模式,输入服务器IP和端口(8211),即可开始游戏。详细教程及更多问题解答请参考阿里云幻兽帕鲁游戏专区。
392 20
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
Baichuan-Omni-1.5:百川智能开源全模态理解与生成模型,支持文本、图像、音频和视频的多模态输入和输出
Baichuan-Omni-1.5 是百川智能开源的全模态理解模型,支持文本、图像、音频和视频的多模态输入和输出,显著提升多模态交互体验。
844 22
Baichuan-Omni-1.5:百川智能开源全模态理解与生成模型,支持文本、图像、音频和视频的多模态输入和输出
|
10月前
|
数据采集 前端开发 API
SurfGen爬虫:解析HTML与提取关键数据
SurfGen爬虫:解析HTML与提取关键数据
|
应用服务中间件 网络安全 nginx
|
Kubernetes 网络协议 前端开发
Kubernetes MetalLB 作为 Load Balancer 下
Kubernetes MetalLB 作为 Load Balancer 下
562 1
Kubernetes MetalLB 作为 Load Balancer 下
|
安全 开发工具 Python
点播和播放器下载需要的参数的区别(VideoId、AccessKeyId、AccessKeySecret、playKey、playauth)
解答参数VideoId、AccessKeyId、AccessKeySecret、playKey、playauth是什么及如何获取.
11744 0
|
网络协议 网络架构 算法
网络基础CCNP篇|IP分片详解
分片各功能详解剖析
3158 0