windows系统docker搭建使用及Kubernetes配置

 1)Docker Desktop for Windows下载

官网地址: 下载后安装包为:Docker Desktop Installer.exe 安装步骤参考:

2)启动Docker

如果启动报关于WSL 2 的错误,需要安装WSL2【linux内核更新包,适用于linux的windows的子系统,因为docker依赖的环境的linux】,可参考:

3)检测docker是否运行成功
打开Windows PowerShell

输入:docker run hello-world

4)在docker容器中安装mysql

4.1)拉取镜像

1)命令 docker pull mysql:latest 命令及版本参考: 2)拉取镜像报错: latest: Pulling from library/mysql no matching manifest for windows/amd64 10.0.19042 in the manifest list entries 3)解决报错: 修改docker桌面版上的配置: "experimental": true 4)成功拉取镜像

4.2)查看镜像

docker images

4.3)删除镜像

docker rmi 镜像id

4.4)运行容器

docker run -itd --name mysql-stu -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql -p 3306:3306 容器端口映射主机端口 MYSQL_ROOT_PASSWORD=123456 mysql的root密码设置为123456

4.5)访问mysql服务

进入mysql命令行 docker exec -it 容器名称 bash mysql -uroot -p 或 docker exec -it 容器id bash mysql -uroot -p123456 或 使用DBeaver连接工具测试连接成功

5)常用命令

1)查看已启动的容器 docker ps 2)查看已暂停的容器 docker ps -a 3)启动容器 docker start 容器id 4)停止容器 docker stop 容器ID或容器名 停止所有容器:docker stop $(docker ps -a -q) 5)进入容器 docker exec -it 容器名称 bash 或 docker exec -it 容器id bash 如果以上报错: 换个命令试一下 docker exec -it 容器id sh 根据容器名的关键字 进入容器(a.查找容器id docker ps | grep redis b.进入容器 docker exec -it 容器id sh ==>合并一条命令:docker exec -it $(docker ps | grep redis | awk {print $1}) sh) 6)删除容器 docker rm -f 容器ID 删除所有容器:docker rm $(docker ps -a -q) 7)删除镜像 查看镜像:docker images 删除镜像:docker rmi <image id> 删除所有镜像:docker rmi $(docker images -q) 强制删除所有镜像:docker rmi -f $(docker images -q)

6)windows下安装k8s

前提:安装了docker

6.1)通过阿里云的批处理,提前把kubernetes需要的image拉取下来

通过阿里云的批处理,提前把kubernetes需要的image拉取下来,git clone git clone https://github.com/AliyunContainerService/k8s-for-docker-desktop.git 查看docker desktop的版本,切换到对应的版本git checkout v1.22.5 k8s镜像在images.properties中: 执行load_images.ps1批量拉取镜像 如果在Windows PowerShell执行该脚本报错(在此系统中禁止执行该脚本) ---powershell中执行脚本报错解决:可以通过执行 set-ExecutionPolicy RemoteSigned 该命令解决,再重新执行脚本即可。

6.2) Docker Desktop上开启Kubernetes

6.3)kubernetes-dashboard安装

安装后可以图形化界面操作k8s

1)通过kubernetes-dashboard.yaml安装dashboard 修改yaml中的type类型 修改后:

6.4)访问dashboard图形化界面

通过当前主机ip:nodePort访问

浏览器访问: 获取token:kubectl -n kube-system describe secret default
经验分享 程序员 微信小程序 职场和发展