【Docker学习记录】
创始人
2024-11-15 03:33:59
0

Docker学习记录

目录

  • 1. Windows上使用wsl
    • 1.1 安装docker后遇到的一些疑惑
    • 1.2. wsl的一些相关命令
    • 1.3. 补一点,wsl的作用
  • 2. docker一些常用的命令
    • 2.1 构建docker镜像
    • 2.2 运行镜像
  • 3. Dockerfile的编写
    • 3.0 docker的一些概念
      • 3.0.1 容器的分层
      • 3.0.2 COPY-ON-WRITE
    • 3.1 FROM命令
    • 3.2 ENV命令
    • 3.3 ADD命令
    • 3.4 COPY命令
    • 3.5 RUN命令
    • 3.6 CMD命令

1. Windows上使用wsl

1.1 安装docker后遇到的一些疑惑

  • 使用wsl -l命令出现了docker-desktop和docker-desktop-data,这两个发行版的关系是什么。在阅读了stackoverflow上一位大佬的回答后,了解到docker-desktop-data是docker-desktop的存储系统。

docker-desktop负责docker的启动(基本替代了Hyper-V)
docker-desktop-data负责数据的存储(替代了VHD)
(注:distro 指发行版)

链接:What is the docker-desktop-data distro used for when running docker desktop with the WSL 2 engine

1.2. wsl的一些相关命令

wsl -l -o # [wsl --list --online]列出所有可以在线安装的Linux发行版 wsl -l -v # [wsl --list --verbose]列出发行版本号 wsl --version # 查看版本号 wsl --help # 记住这个就不慌 

1.3. 补一点,wsl的作用

  • wsl是【windows for Linux】的缩写,中文翻译为适用于Linux的Windows子系统,可以安装Linux的发新版本,直接在Windows上使用Linux的一应用程序,不用进行任何修改,不需要传统的的虚拟机或者双系统的大量资源消耗(可能电脑太拉了,有时候电脑虚拟机开了直接卡死)。

2. docker一些常用的命令

2.1 构建docker镜像

docker build -t name:version path # 在path下,使用Dockerfile创建一个名为name版本号为version的镜像 

2.2 运行镜像

docker run --name=name imageName:version # 使用imageName镜像运行一个名为name的容器 										 # 这个那么不指定的话,系统会自动分配一个奇奇怪怪的名字 docker run -it --name=name imageName:version /bin/bash # -it表示使用交互式终端运行,后面指定/bin/bash 													   # 如果Dockerfile中指定了CMD命令的话,以这种方式进入不会执行CMD命令 

3. Dockerfile的编写

3.0 docker的一些概念

3.0.1 容器的分层

  • 一个运行的容器可以分为两层,一个是最上层的容器层,另一个是底层的镜像层。容器层是可以进行读写的,镜像层是只读的。

3.0.2 COPY-ON-WRITE

  • 容器具有写时复制的特性,也就是说更改镜像中的文件时,会在容器层创建一个该文件的副本,并修改改副本。

3.1 FROM命令

  • 也就是说以Dockerfile创建的容器必须依赖于一个已存在的镜像,但也可以使用FROM scratch,表示使用一个空白的虚拟镜像进行创建。这种方式创建的镜像,运行后使用的是host的内核。

3.2 ENV命令

  • 指定环境变量,k-v形式ENV key=value,在Dockerfile中的其他位置想要使用环境变量的时候使用该形式{key}

3.3 ADD命令

  • 添加文件,可以添加压缩文件到镜像中,添加后直接以解压形式在镜像中存在。

3.4 COPY命令

  • 将主机上的文件拷贝到镜像中。

3.5 RUN命令

  • 在镜像构建过程中执行的指令。

3.6 CMD命令

  • 在进行运行过程时执行的指令,不参与镜像的构建。

相关内容

热门资讯

windows和安卓系统的关系... 你有没有想过,为什么你的手机和电脑有时候会像好朋友一样,互相配合得天衣无缝?其实,这背后有一个大大的...
安卓11怎么降级系统,轻松还原... 你有没有发现,安卓11系统虽然功能强大,但有时候也会有点小闹心呢?比如,某些应用不支持,或者系统运行...
正版授权!游戏推荐斗牛房卡出售... 今 日消息,天蝎大厅房卡添加微信33549083 苹果今日发布了 iOS 16.1 正式版更新,简单...
推荐一款!金花房卡批发女娲大厅... 女娲大厅房卡更多详情添加微:33549083、 2、在商城页面中选择房卡选项。 3、根...
安卓系统误删无法开机,紧急修复... 手机里的照片、联系人、重要文件,说没就没了!最近,身边的朋友纷纷向我抱怨,他们的安卓手机因为误删数据...
玩家攻略,牛牛充值房卡新大圣/... 玩家攻略,牛牛充值房卡新大圣/新道游/微信链接房卡购买渠道新大圣/新道游是一款非常受欢迎的游戏,咨询...
一分钟了解!牛牛房卡出售红桃众... 红桃众娱是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:【3329006910】或QQ:332900...
IA解析/金花房卡批发玄灵大厅... IA解析/金花房卡批发玄灵大厅/微信链接房卡最低价格Sa9Ix苹果iPhone 17手机即将进入量产...
我来教你/牛牛房卡代理新518... 新518互娱房卡更多详情添加微:33549083、 2、在商城页面中选择房卡选项。 3...
正规平台有哪些,金花房卡代理零... 微信游戏中心:九天大厅房卡在哪里买打开微信,添加客服微信【88355042】,进入游戏中心或相关小程...
荣耀magic是安卓系统吗,探... 你有没有听说过荣耀Magic这款手机?最近它可是手机圈里的热门话题呢!很多人都在问,荣耀Magic是...
头条推荐!游戏推荐牛牛房卡出售... 微信游戏中心:海豚大厅房卡在哪里买打开微信,添加客服微信【88355042】,进入游戏中心或相关小程...
正版授权!斗牛房卡充值新九天大... 您好!微信新九天大厅大厅链接获取房卡可以通过以下几种方式购买: 1.微信渠道:(新九天大厅)大厅介...
头条推荐!牛牛房卡制作链接玄武... 今 日消息,玄武大厅房卡添加微信33549083 苹果今日发布了 iOS 16.1 正式版更新,简单...
科技实测!牛牛房卡官网昆仑大厅... 微信游戏中心:昆仑大厅房卡在哪里买打开微信,添加客服微信【88355042】,进入游戏中心或相关小程...
IA解析/斗牛房卡充值宝马系列... 宝马系列/随意玩房卡更多详情添加微:33549083、 2、在商城页面中选择房卡选项。 ...
正规平台有哪些,游戏推荐牛牛房... 微信游戏中心:新蜜瓜大厅/随意玩房卡在哪里买打开微信,添加客服微信【88355042】,进入游戏中心...
IA解析/金花房卡制作链接新天... 新天王/皇豪互众是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:【3329006910】或QQ:33...
推荐一款!牛牛房卡制作链接上游... 推荐一款!牛牛房卡制作链接上游联盟/正规房卡平台有哪些Sa9Ix苹果iPhone 17手机即将进入量...
我来教你/如何购买金花房卡鸿狐... 我来教你/如何购买金花房卡鸿狐大厅/房卡购买批发价格鸿狐大厅是一款非常受欢迎的游戏,咨询房/卡添加微...