首页 > 其他分享 >Docker入门实践(五)

Docker入门实践(五)

时间:2024-09-30 17:12:06浏览次数:8  
标签:容器 入门 实践 映像 镜像 docker Docker 运行 quickstart

什么是容器?

定义

容器是每个应用组件的独立进程,它完全和你机器的其他东西隔离。

  • 独立性:每个容器包含所有它需要的功能,不依赖于主机上预安装的依赖项。
  • 隔离行:由于容器是隔离运行的,它们对主机和其他容器的影响最小,增加了应用的安全性。
  • 独立性:每个容器独立管理,删除一个容器不会影响其他容器。
  • 可移植性:容器可以允许在任何地方,运行在开发机器的容器也能够同样地方式在数据中心或其它云平台中运行。

容器与虚拟机的区别

虚拟机是一整个包含自己内核、硬件驱动、程序和应用的操作系统。容器只是一个独立的进程,它拥有运行所需的所有文件。如果运行多个容器,它们都共享相同的内核,从而允许在更少的基础设施上运行更多的应用程序。您经常会看到容器和vm一起使用。例如,在云环境中,供应的机器通常是vm。但是,与提供一台机器来运行一个应用程序不同,具有容器运行时的VM可以运行多个容器化的应用程序,从而提高资源利用率并降低成本。

用法

1. 运行容器
docker run -d -p 8080:80 docker/welcome-to-docker
2. 查看运行中的容器
docker ps
3. 停止容器
docker stop <the-container-id>

tips:当按ID引用容器时,不需要提供完整的ID。您只需要提供足够的ID以使其唯一。

什么是镜像?

定义

容器映像是一个标准化的包,其中包含运行容器所需的所有文件、二进制文件、库和配置。

用法

1. 搜索镜像
docker search docker/welcome-to-docker
2. 拉取镜像
docker pull docker/welcome-to-docker
3. 查看已拉取到本地的所有镜像
docker image ls
4. 查看构成镜像的所有层
docker image history docker/welcome-to-docker

什么是注册中心?

定义

注册中心是存储和共享容器映像的集中位置。它可以是公共的,也可以是私人的。

注册中心与仓库的区别

注册中心是存储和管理容器映像的集中位置,而存储库是注册中心内相关容器映像的集合。把它想象成一个文件夹,你可以根据项目来组织你的图像。每个存储库包含一个或多个容器映像。

用法

上传自己的镜像到注册中心流程。
0. 注册DockerHub账号并创建仓库。
1. 准备要打包的文件
git clone https://github.com/dockersamples/helloworld-demo-node
2. 通过dockerfile打包
cd helloworld-demo-node
docker build -t <YOUR_DOCKER_USERNAME>/docker-quickstart .
3. 创建镜像文件
docker build -t <YOUR_DOCKER_USERNAME>/docker-quickstart .
4. 查看镜像文件
docker images
5. 启动容器
docker run -d -p 8080:8080 <YOUR_DOCKER_USERNAME>/docker-quickstart 
6. 为镜像打标签
docker tag <YOUR_DOCKER_USERNAME>/docker-quickstart <YOUR_DOCKER_USERNAME>/docker-quickstart:1.0 
7. 将镜像推送至镜像仓库
docker push <YOUR_DOCKER_USERNAME>/docker-quickstart:1.0

什么是组件?

定义

使用Docker Compose,你可以在一个单一的YAML文件中定义所有的容器及其配置。如果将该文件包含在代码存储库中,任何克隆您的存储库的人都可以使用一个命令启动并运行。

用法

1. 准备程序
git clone https://github.com/dockersamples/todo-list-app 
2. 通过compose启动应用
docker compose up -d --build
3. 停止应用
docker compose down
docker compose down --volumes(会同时移除持久化卷)

标签:容器,入门,实践,映像,镜像,docker,Docker,运行,quickstart
From: https://www.cnblogs.com/luoxiaolei/p/18442202

相关文章

  • WPF MVVM入门系列教程(二、依赖属性)
    说明:本文是介绍WPF中的依赖属性功能,如果对依赖属性已经有了解了,可以浏览后面的文章。 为什么要介绍依赖属性在WPF的数据绑定中,密不可分的就是依赖属性。而MVVM又是跟数据绑定紧密相连的,所以在学习MVVM之前,很有必须先学习一下依赖属性。 依赖属性(DepencencyProperty)是什......
  • 2024云栖大会资料精选,《云原生+AI核心技术&最佳实践》PPT全量放送!
    2024云栖大会已圆满落幕。一年一度的云栖大会,已成为云计算和数字经济的风向标。本届云栖大会更加注重AI技术在各行各业的实际应用,让AI技术真正落地,服务于社会各领域。AI时代的到来,向企业底层IT资源的丰富与敏捷提出了更大的挑战。当谈到构建高效、弹性的智能化基础设施时......
  • MongoDB入门
    MongoDB是一个基于分布式文件存储的数据库,由C++语言编写,旨在为WEB应用提供可扩展的高性能数据存储解决方案。下载DownloadMongoDBCommunityServer|MongoDBMongoDB的基本操作添加数据db.collection.insertOne(document)//插入单个文档db.collection.insertMany([......
  • 图解Docker Compose 架构设计分析与全攻略:构建、扩展和管理你的容器(第一部分)
    DockerCompose是Docker官方编排工具,它允许用户通过简洁的YAML文件定义多容器的Docker应用程序。无论是开发者、系统管理员还是DevOps工程师,DockerCompose都能帮助轻松地管理复杂的服务堆栈。通过本文,将深入了解DockerCompose的强大功能和使用场景,探索如何利......
  • docker安装openresty
     一、创建网络dockernetworkcreate-dbridgemy_network 二、拉取镜像dockerpullopenresty/openresty 三、运行临时容器dockerrun-itd--nameopenresty-p80:80--restart=always--netmy_networkopenresty/openresty 四、宿主机创建相应目录mkd......
  • [Python数据分析]最通俗入门Kmeans聚类分析,可视化展示代码。
     什么是k-means分析?【头条@William数据分析,看原版】    想象一下,你有一堆五颜六色的糖果,你想把它们按照颜色分成几堆。k-means分析就是这么一个自动分类的过程。它会根据糖果的颜色特征,把它们分成若干个组,每个组里的糖果颜色都比较相似。更专业一点说,k-means分析是一......
  • Rocky9.2安装docker-docker-compose
    1.更换阿里云源(不换下载很慢)sed-e's|^mirrorlist=|#mirrorlist=|g'-e's|^#baseurl=http://dl.rockylinux.org/$contentdir|baseurl=https://mirrors.aliyun.com/rockylinux|g'-i.bak/etc/yum.repos.d/rocky-*.repodnfmakecache2.更新系统包sud......
  • php docker image
    QuickreferenceMaintainedby:theDockerCommunity⁠WheretogethelptheDockerCommunitySlack⁠,ServerFault⁠,Unix&Linux⁠,orStackOverflow⁠SupportedtagsandrespectiveDockerfilelinksNote:thedescriptionforthisimageislongerth......
  • 快速入门Java中的HTTP请求
    1.使用java.net.HttpURLConnectionJava标准库中的HttpURLConnection是最基本的方式,用于发送HTTP请求。示例:发送GET请求发送POST请求2.使用ApacheHttpClientApacheHttpClient是一个强大的HTTP客户端库,支持高级HTTP通信功能。添加依赖如果你使用Maven,添加以下依赖到你......
  • 【Linux】Docker下载与使用-nginx
    目录一、Docker介绍     二、Docker结构三、下载Daocker1.在linux上下载docker,执行以下命令即可:2.开启docker3.执行以下操作并进行使用四、在Docker上安装nginx一、Docker介绍             Docker:是给予Go语言实现的开源项目。   ......