admin 管理员组

文章数量: 887006

文章目录

    • 简介
    • windows11安装docker desktop
      • 开启虚拟机服务
      • 启动WSL服务即Linux系统和虚拟机
      • 安装更新为wsl2新版的Linux
      • 安装docker desktop installer
      • win11 安装docker desktop 打开报错?An unexpected error occurred. Restart Docker Desktop
      • Windows10启动Docker报错:Hardware assisted virtualization and data execution protection must enabled BIOS
        • 解决方案
    • docker Destktop配置并打包docker镜像
      • 使用Dockerfile 构建镜像并启动
      • 管理界面启动镜像和查看日志
    • 安装 K8S
      • 安装完成
    • 安装dashboard
    • 参考文章

简介

我们知道docker的安装一般我们是安装在linux系统上的,但是如果你的宿主机是windows,那么你还想装docker,那么就需要现在你的windows上装上虚拟机,虚拟机上装linux操作系统,然后在Linux操作系统上再去安装docker,这样比较麻烦。

docker desktop的出现就可以解决上面那个问题,你只需要在windows上开启虚拟化功能,然后安装一下docker desktop就可以了。

windows11安装docker desktop

开启虚拟机服务

Windows 11
如果您的系统不是专业版的,需要安装wsl.DockerDesktop和wsl

专业版直接勾选hype-v开启虚拟机
Windows的设置–应用-可选功能-更多windows功能-hype-v勾选

家庭版要安装hype-v服务

保存文件为hype-v.bat右键管理员运行脚本

pushd "%~dp0"
dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt
for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"
del hyper-v.txt
Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL

最后一步点击Y会重启电脑,完成安装。

家庭版打开勾选hype-v开启虚拟机 -直接全选

启动WSL服务即Linux系统和虚拟机

管理员权限在power shell中执行以下几个命令:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

该命令是授权可以启动WSL(为Linux启用Windows子系统)
WSL是linux操作系统内核的一些组件,其实我们虽然是在windows下进行安装docker 实际上我们的docker还是跑在了Linux上的,这就是为什么我们需要用WSL的原因。
上面的命令执行完成之后,执行下面的语句:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

上面的命令是启动虚拟机的功能。

安装更新为wsl2新版的Linux

首先下载;

下载地址:
https://wslstorestorage.blob.core.windows/wslblob/wsl_update_x64.msi

下载完成之后,进行安装。 如果你的系统已经安装了它直接让你点finish
安装完成之后,将wsl2设置为默认版本。

wsl --set-default-version 2

完成之后,重启电脑。

安装docker desktop installer

到官网上下载

https://docs.docker/desktop/windows/install/

下载完成之后,点击OK安装,确认系统重启,完成之后,就可以使用了

坑比较多…

win11 安装docker desktop 打开报错?An unexpected error occurred. Restart Docker Desktop

docker desktop 打开报错,An unexpected error occurred. Restart Docker Desktop

We’ve release docker Desktop 4.20.1, containing a fix for this issue, so I’m closing this issue.
For more information, head to
https://docs.docker/desktop/release-notes/.
更新时间:2023/06/12

官方已经上周发布的最新版本4.20.1修复此问题
https://docs.docker/desktop/release-notes/

Windows10启动Docker报错:Hardware assisted virtualization and data execution protection must enabled BIOS

原因分析
问题出在Hyper-V已禁用或Hypervisor代理未运行。

解决方案

方案一 (如果完全禁用或未安装Hyper-V)
docker desktop 基于windows hyper-v,必须确保hyper-v组件已经开启。可通过如下PowerShell (管理员身份)命令启动。

以管理员身份打开CMD
启用Hyper-V

dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All

或者在启用和关闭windows功能中先禁用Hyper-V,重启后再开启。

方案二 (如果Hyper-V功能已启用但不起作用)
hyper-v组件开启后,需确保其守护进程自动运行(我问题出在这里,守护进程没有运行),可通过如下PowerShell(管理员身份) 命令启动:

bcdedit /set hypervisorlaunchtype auto

重启电脑,启动docker desktop,即可正常运行。我重装时是把方案一,二都执行了一遍可以了

原文链接:https://blog.csdn/MyronCham/article/details/125216511

docker Destktop配置并打包docker镜像

修改默认配置项,setting修改保存目录到D盘;不然C盘可能不够用

修改镜像源:
默认已经设置了163的镜像源了;可以根据需要改成你自己的私仓

这里提供了其他公司的镜像源

  "registry-mirrors":[
    "https://registry.docker-cn",
    "http://hub-mirror.c.163",
    "https://docker.mirrors.ustc.edu"
   ],

使用Dockerfile 构建镜像并启动

打开cmd,到Dockerfile的路径(请把dockerfile单独放到一个目录)。

FROM openjdk:11
MAINTAINER bamoo
ADD springboot-demo.jar springboot-demo.jar
RUN echo "Asia/Shanghai" >/etc/timezone
RUN sh -c 'touch /springboot-demo.jar'
ENV JAVA_OPTS=""
CMD exec java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /springboot-demo.jar
EXPOSE 8000


#构建镜像
docker build . -t springboot-demo:v1 -f Dockerfile

#查看镜像
docker images
REPOSITORY                                                        TAG                 IMAGE ID            CREATED             SIZE
springboot-demo                                                   v1                  3ed4b8bc215f        26 minutes ago      140MB

##把镜像导出到本地磁盘中
docker save -o ./springboot-demo.tar  springboot-demo:v1

## 删除镜像中的镜像源
 docker rmi springboot-demo:v1
##查看没有了
docker images
##把磁盘镜像文件导入镜像中
$ docker load < ./springboot-demo.tar

##查看又加载回来了
docker images


## 运行镜像,也可也在管理界面中运行
docker run -d -p 8000:8000  --name demo-test springboot-demo:v1

#查看镜像容器进程是否启动
docker ps -a

#直接本地访问,返回数据运行正常
curl  localhost:8000
hallo springboot

管理界面启动镜像和查看日志

步骤如下1,2

在管理界面查看启动日志

安装 K8S

在安装完 Docker desktop 之后, 我们利用 Docker desktop 来安装 K8S

这里有两种方式,这里直接选择方式二在线安装

方式一: 下载 k8s-for-docker-desktop (预先下载镜像)
具体参考 https://github/AliyunContainerService/k8s-for-docker-desktop

方式二: 直接安装 ( 确保可以直接下载 K8S 相关镜像 )
选择 enable Kubernetes 之后, 选直接 Apply 即可, 期间一直会出现 starting 状态, 表示在自动下载相关镜像.

安装中

安装完成可以看到容器中已经运行了不少K8S

安装完成

使用如下命令验证 K8S 是否安装成功

kubectl get nodes
得到如下输出, 说明 K8S 已经安装完成

NAME             STATUS   ROLES    AGE   VERSION
docker-desktop   Ready    master   3h    v1.19.7

安装dashboard

下载
https://raw.githubusercontent/kubernetes/dashboard/v2.3.1/aio/deploy/recommended.yaml
修改kubernetes-dashboard的Service类型,新新增注释的信息

# 修改kubernetes-dashboard的Service类型
kind: Service
apiVersion: v1
metadata:
  labels:
    k8s-app: kubernetes-dashboard
  name: kubernetes-dashboard
  namespace: kubernetes-dashboard
spec:
  type: NodePort  # 新增
  ports:
    - port: 443
      targetPort: 8443
      nodePort: 30009  # 新增
kubectl create -f recommended.yaml
kubectl proxy
# 创建账号
kubectl create serviceaccount dashboard-admin -n kubernetes-dashboard

# 授权
kubectl create clusterrolebinding dashboard-admin-rb --clusterrole=cluster-admin --serviceaccount=kubernetes-dashboard:dashboard-admin
#查看账号
kubectl -n kubernetes-dashboard get sa
#根据账号生成token
kubectl create token -n kubernetes-dashboard dashboard-admin

输入token字符串登录即可
http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/#/login

参考文章

docker desktop 安装K8S
https://zhuanlan.zhihu/p/363892883
docker desktop 安装dashboard
https://blog.csdn/qq_35909525/article/details/129401661

本文标签: 镜像 环境 docker Desktop dashboard