Docker学习笔记(三)之容器的基本操作

2024-09-01 21:48

本文主要是介绍Docker学习笔记(三)之容器的基本操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

容器是一个打包了应用和服务的环境,是一个轻量级的虚拟机,每一个容器都由一组应用和必要依赖的库组成。
容器作为软件应用的标准集装箱,必须要定义与应用无关的接口。
这次主要学习容器的标准操作

创建容器

创建完容器后docker都会返回一个容器的ID。这个ID是唯一表示容器的。
1. docker create创建的容器处于停止状态。
2. docker run创建并启动容器
这两者若创建的容器没有对应的镜像,docker会从公共的registry上拖下来。
这里写图片描述
PS: 先用docker create创建容器,再docker start的操作,等同docker run
3. docker ps查看正在运行的容器
这里写图片描述
4. docker ps -a查看所有容器,包括没有运行的容器
这里写图片描述
这里重点说一下docker run这个命令
docker run可以创建两种容器:交互式容器和后台型容器。
交互式:运行在前台,有指定的交互控制台。可以给容器输入和输出。所在终端关闭了,或者exit,或者docker stop或docker kill,容器都会变成停止状态。
后台式:运行在后台,创建成功后就与终端无关了。只能调用docter stop或者docker kill来将容器状态变为停止。
这里写图片描述
这里写图片描述
命令docker run -i -t ubuntu /bin/bash
-i打开容器的标准输入
-t为容器创建一个命令行终端。
一般还能用–name=指定容器名,这是一个可选项,若不加的话docker会给你随机分配一个。
这里写图片描述
这里写图片描述
命令背后的事,后台干了些什么事。
docker run命令运行后,docker会在本地搜索我们指定的ubuntu镜像,如果没有的话,就会到公有仓库去Docker Hub中搜索,如果在服务器想找到了指定镜像,就会下载到本地,docker使用这个镜像创建并启动一个容器,容器的文件系统是在只读的镜像文件上加一层可读写的文件层,这样可以保证镜像不变只记录改变的数据,这对容器的共享和传输都非常有利。接着会配置容器的网络,docker会为容器分配一个虚拟网络接口,并通过桥接的方式将该网络接口桥接到宿主主机上去,然后该虚拟网络接口分配一个ip地址。最后,docker在新容器下运行指定的命令。

接下来创建一个后台型容器,
一般用-d来表示后台型容器
这里写图片描述

这篇关于Docker学习笔记(三)之容器的基本操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1128133

相关文章

Spring核心思想之浅谈IoC容器与依赖倒置(DI)

《Spring核心思想之浅谈IoC容器与依赖倒置(DI)》文章介绍了Spring的IoC和DI机制,以及MyBatis的动态代理,通过注解和反射,Spring能够自动管理对象的创建和依赖注入,而MyB... 目录一、控制反转 IoC二、依赖倒置 DI1. 详细概念2. Spring 中 DI 的实现原理三、

更改docker默认数据目录的方法步骤

《更改docker默认数据目录的方法步骤》本文主要介绍了更改docker默认数据目录的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1.查看docker是否存在并停止该服务2.挂载镜像并安装rsync便于备份3.取消挂载备份和迁

Docker集成CI/CD的项目实践

《Docker集成CI/CD的项目实践》本文主要介绍了Docker集成CI/CD的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录一、引言1.1 什么是 CI/CD?1.2 docker 在 CI/CD 中的作用二、Docke

如何在一台服务器上使用docker运行kafka集群

《如何在一台服务器上使用docker运行kafka集群》文章详细介绍了如何在一台服务器上使用Docker运行Kafka集群,包括拉取镜像、创建网络、启动Kafka容器、检查运行状态、编写启动和关闭脚本... 目录1.拉取镜像2.创建集群之间通信的网络3.将zookeeper加入到网络中4.启动kafka集群

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

如何用Docker运行Django项目

本章教程,介绍如何用Docker创建一个Django,并运行能够访问。 一、拉取镜像 这里我们使用python3.11版本的docker镜像 docker pull python:3.11 二、运行容器 这里我们将容器内部的8080端口,映射到宿主机的80端口上。 docker run -itd --name python311 -p

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]