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

相关文章

解决docker目录内存不足扩容处理方案

《解决docker目录内存不足扩容处理方案》文章介绍了Docker存储目录迁移方法:因系统盘空间不足,需将Docker数据迁移到更大磁盘(如/home/docker),通过修改daemon.json配... 目录1、查看服务器所有磁盘的使用情况2、查看docker镜像和容器存储目录的空间大小3、停止dock

docker 重命名镜像的实现方法

《docker重命名镜像的实现方法》在Docker中无法直接重命名镜像,但可通过添加新标签、删除旧镜像后重新拉取/构建,或在DockerCompose中修改配置文件实现名称变更,感兴趣的可以了解一下... 目录使用标签(Tagging)删除旧的php镜像并重新拉取或构建使用docker Compose在Do

Java JUC并发集合详解之线程安全容器完全攻略

《JavaJUC并发集合详解之线程安全容器完全攻略》Java通过java.util.concurrent(JUC)包提供了一整套线程安全的并发容器,它们不仅是简单的同步包装,更是基于精妙并发算法构建... 目录一、为什么需要JUC并发集合?二、核心并发集合分类与详解三、选型指南:如何选择合适的并发容器?在多

python语言中的常用容器(集合)示例详解

《python语言中的常用容器(集合)示例详解》Python集合是一种无序且不重复的数据容器,它可以存储任意类型的对象,包括数字、字符串、元组等,下面:本文主要介绍python语言中常用容器(集合... 目录1.核心内置容器1. 列表2. 元组3. 集合4. 冻结集合5. 字典2.collections模块

docker编写java的jar完整步骤记录

《docker编写java的jar完整步骤记录》在平常的开发工作中,我们经常需要部署项目,开发测试完成后,最关键的一步就是部署,:本文主要介绍docker编写java的jar的相关资料,文中通过代... 目录all-docker/生成Docker打包部署文件配置服务A的Dockerfile (a/Docke

Spring Boot中获取IOC容器的多种方式

《SpringBoot中获取IOC容器的多种方式》本文主要介绍了SpringBoot中获取IOC容器的多种方式,包括直接注入、实现ApplicationContextAware接口、通过Spring... 目录1. 直接注入ApplicationContext2. 实现ApplicationContextA

linux配置podman阿里云容器镜像加速器详解

《linux配置podman阿里云容器镜像加速器详解》本文指导如何配置Podman使用阿里云容器镜像加速器:登录阿里云获取专属加速地址,修改Podman配置文件并移除https://前缀,最后拉取镜像... 目录1.下载podman2.获取阿里云个人容器镜像加速器地址3.更改podman配置文件4.使用po

k8s容器放开锁内存限制问题

《k8s容器放开锁内存限制问题》nccl-test容器运行mpirun时因NCCL_BUFFSIZE过大导致OOM,需通过修改docker服务配置文件,将LimitMEMLOCK设为infinity并... 目录问题问题确认放开容器max locked memory限制总结参考:https://Access

Docker多阶段镜像构建与缓存利用性能优化实践指南

《Docker多阶段镜像构建与缓存利用性能优化实践指南》这篇文章将从原理层面深入解析Docker多阶段构建与缓存机制,结合实际项目示例,说明如何有效利用构建缓存,组织镜像层次,最大化提升构建速度并减少... 目录一、技术背景与应用场景二、核心原理深入分析三、关键 dockerfile 解读3.1 Docke

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践