Docker Desktop安装

0 Preface/Foreward

0.1 参考文档

Overview of Docker Desktop | Docker Docs (Docker Desktop使用手册)

0.1.1 Docker Dashboard

Before going any further, we want to highlight the Docker Dashboard, which gives you a quick view of the containers running on your machine. It prvovides you access to container logs, lets you get a shell inside the container, and allows you to easily manage container lifecycle (stop, remove, etc.).

0.1.2 What is a container?

Simply put, a container is another process on your machine that has been isolated from all other processes on the host machine. That isolation leverages kernel namespaces and cgroups, features that have been in Linux for a long time. Docker has worked to make these capabilities approachable and easy to use.

0.1.3 What is a container image?

When running a container, it uses an isolated filesystem. This custom filesystem is provided by a container image. Since the image contains the container's filesystem, it must include everyting needed to run the application - all dependencies, configuration, scripts, binaries, etc. The image also contains other configuration for the container, such environment variables, a default command to run, and other metadata.

0.2 Docker Desktop介绍

 0.2.1 Overview

Docker Desktop is one-click-install application for your Mac, Linux, or Windows environment that lets you build, share, and run containerized applications and microservices.

It provides a straightforward GUI (Graphical User Interface) that lets you manage your containers, applications, and images directly from your machine.

Docker Desktop reduces the time spent on complex setups so you can focus on writing code. It takes care of port mappings, file system concerns, and other default settings, and is regularly updated with bug fixed and security updated. 

What's included in Docker Desktop?

  • Docker Engine
  • Docker CLI clent
  • Docker build

0.2.2 Docker Engine

 Docker Engine is an open source containerization technology for building and containerizing your applications. Docker Engine acts as a client-server application with:

  • A server with a long-running daemon process dockerd
  • APIs which specify interfaces that programs can use to talk to and instrcut the Docker daemon.
  • A command line interface (CLI) client docker

0.2.3 Docker Build

Docker build is one of Docker Engine's most used features. Whenever you are creating an image you are using Docker Build. Build is a key part of your software development life cycle allowing you to package and bundle your code and ship it anywhere.

Docker build is more than a command for buiding images, and it's not only about packaging your code. It's a whole ecosystem of tools and features that support not only common workflow tasks but also provides support for more complex and advanced scenarios.

1 安装

1.1 运行docker安装包

安装完Docker Desktop后,运行Docker Desktop,出现WSL 2安装不完整情况,具体情况如下: 

解决方法:旧版 WSL 的手动安装步骤 | Microsoft Learn

也可以直接下载新的安装包,然后安装。https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

1.2 开始使用Docker

 1.2.1 Clone a repository

 The Getting Started project is a simple GitHub repository which contains everyting you need to build an image and run it as a container.

Clone the repository by running Git in a container. 

You can also type the command directly in a command line interface/application.

 1.2.2 Build the image

 

A Docker image is a private file system just for your container. It provides all the files and code your container needs.

 

 

 1.2.3 Run your first container

 

Start a container based on the image you built in the previous step. Running a container launches your application with private resources, securely isolated from the rest of your machine.

 

命令分析

 docker run -d -p 80:80 docker/getting-started

You will notice that a few flags being used, here is some more info on them:

  • -d - run the container in detached mode (in the background/backend)
  • -p 80:80 - map port 80 of the host to port 80 in the container
  • docker/getting-started - the image to run

Pro tip: Professional tip (专业提示)

You can combine single character flags to shorten the full command. As an example, the command above could be written as:

docker run -dp 80:80 docker/getting-started

 1.2.4 Share

 You must be signed in to Docker Hub to share your image.

Save and share your image on Docker Hub to enable other users to easily download and run the image on any destiantion machine.

 

2 使用

2.1 启动Docker

注意:要启动Docker,需要登陆账号。

 PS C:\Users\Andy.fan> docker run -d -p 80:80 docker/getting-started
Unable to find image 'docker/getting-started:latest' locally
latest: Pulling from docker/getting-started
c158987b0551: Pull complete
1e35f6679fab: Pull complete
cb9626c74200: Pull complete
b6334b6ace34: Pull complete
f1d1c9928c82: Pull complete
9b6f639ec6ea: Pull complete
ee68d3549ec8: Pull complete
33e0cbbb4673: Pull complete
4f7e34c2de10: Pull complete
Digest: sha256:d79336f4812b6547a53e735480dde67f8f8f7071b414fbd9297609ffb989abc1
Status: Downloaded newer image for docker/getting-started:latest
0130d63f7f0180c19450c9c03278bd1e56f19b6f86b6779ccf80bdd74f906341
PS C:\Users\Andy.fan>

 2.2 为WSL distro激活Docker desktop

 

 参考上面的建议文档:https://docs.docker.com/desktop/wsl/

 根据上面提醒,在Docker Desktop设置界面:settings > Resources > WSL INTEGRATION

选中默认的WSL distro(可以按照多个发行版本),当前只安装了一个发行版本,所以Ubuntu-18.04就是默认的发行版本。

激活成功WSL Docker Desktop,输入docker命令,显示Usage 命令文本:

2.3 Docker Desktop启动的WSL distro

 Docker Desktop 安装了两个special-purpose internal Linux distros:都不能用作通用开发

  • docker-desktop:用来运行Docker engine (dockerd)
  • docker-desktop-data:存储容器(containers)和镜像(image)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/383330.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue3+element-plus 实现动态菜单和动态路由的渲染

在 Vue.js 中,使用 Vue Router 管理路由数据,并将其用于渲染 el-menu(Element UI 的菜单组件)通常涉及以下几个步骤: 定义路由元数据: 在你的路由配置中,为每个路由项添加 meta 字段&#xff0c…

RAG vs 微调:大模型知识的进化之路

2024年,大模型应用落地迎来全面提速。越来越多的企业在加大对大模型的投入,抢抓变革机遇,加速应用落地。大模型应用落地绕不开的两个关键词“RAG”和“微调”。那么什么是RAG?什么是大模型微调?大模型项目建设中RAG和微…

redis的使用场景和持久化方式

redis的使用场景 热点数据的缓存。热点:频繁读取的数据。限时任务的操作:短信验证码。完成session共享的问题完成分布式锁。 redis的持久化方式 什么是持久化:把内存中的数据存储到磁盘的过程,同时也可以把磁盘中的数据加载到内存…

基于Jeecgboot3.6.3的vue3版本前后端分离的流程管理平台

声明一下:因为这个项目license问题无法开源,更多技术支持与服务联系本人或加入我的知识星球提供一些技术服务。 初步完成了基于jeecgboot3.6.3的vue3版本的前后端流程管理平台,基于flowable6.8.1,同时支持bpmn流程设计器与仿钉钉流…

IT程序员的雷区都有哪些?你踩了哪些?

软件行业的工作经验和从事这个行业的工作年限直接相关。但从事这项工作的年限并不一定代表获得了相同年限的工作经验。 根据开发人员的习惯可以非常明显地分辨出谁更专业谁更业余。深入剖析下业余程序开发人员的种种表现,每个程序开发人员都应该引以为戒&#xff0…

怎样在 Nginx 中配置基于请求客户端屏幕尺寸的路由?

🍅关注博主🎗️ 带你畅游技术世界,不错过每一次成长机会! 文章目录 怎样在 Nginx 中配置基于请求客户端屏幕尺寸的路由?一、为什么要基于屏幕尺寸进行路由?二、准备工作三、获取客户端屏幕尺寸信息四、配置…

经纬恒润与奇瑞汽车签订新能源项目重点供应商合作协议,共同开启合作新篇章

近日,2024年国家级芜湖经开区汽车零部件生态大会成功举行,经纬恒润受邀出席,与行业各伙伴齐聚经开区,同绘发展蓝图,助力经开区汽车产业高质量发展。会上,经纬恒润与奇瑞汽车签署合作协议,成为奇…

el-image预览图片点击遮盖处关闭预览

预览关闭按钮不明显 解决方式: 1.修改按钮样式明显点: //el-image 添加自定义类名,下文【test-image】代指 .test-image .el-icon-circle-close{ color:#fff; font-size:20px; ...改成很明显的样式 }2.使用事件监听,监听当前遮…

npm下载pnpm

一、提供node_global和node_cache的文件夹 若不存在,可自行新建文件夹 二、配置环境变量 配置NODE_PATH变量: 配置Path变量: 三、执行cmd指令 npm config set prefix "D:\Configure\nodejs\node_global" npm config set cache &…

Redis的缓存问题:缓存穿透、缓存击穿和缓存雪崩

目录 一、缓存穿透 1、问题描述 2、解决方案 二、缓存击穿 1、问题描述 2、解决方案 三、缓存雪崩 1、问题描述 2、解决方案 3、雪崩案例 一、缓存穿透 1、问题描述 缓存穿透指的是⼤量请求的 key根本不存在于缓存中,每次针对此key的请求从缓存获取不到…

单证不一致清关难题 | 国际贸易综合服务平台 | 箱讯科技

什么是单证一致? 单证一致出口方所提供的所有单据要严格符合进口方开证银行所开信用证的要求,或者说出口方制作和提供的所有与本项货物买卖有关的单据,与进口方申请开立的信用证对单据的要求完全吻合,没有矛盾。 添加图片注释&am…

springboot整合 knife4j 接口文档

第一步&#xff1a;引入依赖 <dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-openapi2-spring-boot-starter</artifactId><version>4.4.0</version></dependency> 第二步&#xff1a;写入配置 方…

前端文件下载word乱码问题

记录一次word下载乱码问题&#xff1a; 用的请求是axios库&#xff0c;然后用Blob去接收二进制文件 思路&#xff1a;现在的解决办法有以下几种&#xff0c;看看是对应哪种&#xff0c;可以尝试解决 1.将响应类型设为blob&#xff0c;这也是最重要的&#xff0c;如果没有解决…

《梦醒蝶飞:释放Excel函数与公式的力量》18.1 图表类型与设计

第18章&#xff1a;创建图表和数据可视化 18.1 图表类型与设计 Excel提供了多种图表类型&#xff0c;帮助用户以直观的方式展示数据。选择合适的图表类型和设计可以显著提高数据的可读性和理解度。以下将介绍常见的图表类型及其应用&#xff0c;并通过具体案例进行说明。 18.…

C语言 ——— 函数指针数组的讲解及其用法

目录 前言 函数指针数组的定义 函数指针数组的使用 前言 数组是存放一组相同类型数据的存储空间 关于指针数组的知识请见&#xff1a;C语言 ——— 指针数组 & 指针数组模拟二维整型数组-CSDN博客 那么要将多个函数的地址存储到数组中&#xff0c;这个数组该如何定义…

FreeSWITCH 1.10.10 简单图形化界面26-在网页上播放SIP设备视频

​ FreeSWITCH 1.10.10 简单图形化界面26-在网页上播放SIP设备视频 1、前言2、大概流程3、测试环境4、安装流媒体服务器5、设置流媒体服务器接口6、简单写个web接口7、测试一下1、web播放在线播放器1在线播放器2本地video控件 2、vlc播放vlc播放rtmpvlc播放rtsp 8、总结 1、前…

C语言数据结构课设:基于EasyX前端界面的飞机订票系统

数据结构课程设计说明书 学 院、系&#xff1a; 软件学院 专 业&#xff1a; 软件工程 班 级&#xff1a; 学 生 姓 名&#xff1a; 范 学 号&#xff1a; 设 计 题 目&#xff1a; 飞机订票系统 起 迄 日 期: 2024年6月18日~ 20…

没有51基础,能不能学好STM32?

在开始前刚好我有一些资料&#xff0c;是我根据网友给的问题精心整理了一份「STM32的资料从专业入门到高级教程」&#xff0c; 点个关注在评论区回复“888”之后私信回复“888”&#xff0c;全部无偿共享给大家&#xff01;&#xff01;&#xff01; 我们通常准备攻读一本大部…

宠物医院管理系统视频介绍

千呼新零售2.0系统是零售行业连锁店一体化收银系统&#xff0c;包括线下收银线上商城连锁店管理ERP管理商品管理供应商管理会员营销等功能为一体&#xff0c;线上线下数据全部打通。 适用于商超、便利店、水果、生鲜、母婴、服装、零食、百货、宠物等连锁店使用。 详细介绍请…

vue学习day12-声明式导航续、路由重定向、Vue路由-404、Vue路由-模式设置、编程式导航

34、声明式导航续 &#xff08;4&#xff09;跳转传参 1&#xff09;跳转传参 ①语法&#xff1a; 传递&#xff1a;to“/path?参数名值” 接收&#xff1a;如果在模版里&#xff0c;通过$route.query.参数名获取&#xff0c;如果在js代码里&#xff0c;通过this. $route…