Docker的安装
1. 移除旧版本的docker
# 移除旧版本docker
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine

2. 配置docker yum源
默认yum中docker下载源是https://download.docker.com/linux/centos/docker-ce.repo下载速度较慢
换成阿里源
# 配置docker yum源。
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3. 安装最新的Docker
# 安装 最新 docker
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
- docker-ce : Docker引擎
- docker-ce-cli : Docker引擎的命令行程序
- containerd.io : 容器运行时环境
- docker-buildx-plugin : Docker构建镜像的插件
- docker-compose-plugin : Docker批量操作工具

4. 启动Docker
sudo systemctl start docker
可以随意使用docker命令测试安装是否完成

开机自启docker命令
# 启动& 开机启动docker; enable + start 二合一
systemctl enable docker --now
5. Docker镜像源切换成国内
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://do.nark.eu.org",
"https://dc.j8.work",
"https://docker.m.daocloud.io",
"https://dockerproxy.com",
"https://docker.mirrors.ustc.edu.cn",
"https://docker.nju.edu.cn"
]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
Docker的使用
一、 Docker命令
1.1 镜像相关命令
#搜索镜像
docker search nginx
#下载镜像
docker pull nginx
#下载指定版本镜像
docker pull nginx:1.26.0
#查看所有镜像
docker images
#删除指定id的镜像
docker rmi e784f4560448

# 提交容器变化打成一个新的镜像 -m描述信息 -a作者 -p打包期间暂停容器true
docker commit -m "update index.html" -a "wdm" -p mynginx mynginx:v1.0
# 保存镜像为指定文件 -o写出文件名
docker save -o mynginx.tar mynginx:v1.0
# 加载镜像
docker load -i mynginx.tar


1.2 容器相关命令
#运行一个新容器
docker run nginx
#停止容器
docker stop keen_blackwell
#启动容器
docker start 100
#重启容器
docker restart 100
#查看容器资源占用情况
docker stats 100
#查看容器日志
docker logs 100
#删除指定容器
docker rm 100
#强制删除指定容器
docker rm -f 100



# 后台启动容器
docker run -d --name mynginx nginx
# 后台启动并暴露端口
docker run -d --name mynginx -p 80:80 nginx
# 进入容器内部
docker exec -it mynginx /bin/bash

二、Docker存储
2.1 docker目录挂载
docker run -d -p 80:80 -v /app/nghtml:/usr/share/nginx/html --name app01 nginx




2.2 docker卷映射
docker run -d -p 99:80 -v /app/nghtml:/usr/share/nginx/html -v ngconf:/etc/nginx --name app03 nginx


Minikube
一. Minikube安装
1. 下载
#centos下载方式
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube
根据你的系统,到这里选择对应的下载方式:链接: minikube下载网址
2. 启动minikube
注意:minikube start 会从 Docker Hub 上拉取镜像,安装时不要安装最新的kubernetes版本,会有很多潜在问题,推荐安装跟我一样
minikube start --kubernetes-version=v1.23.8

注:minikube下载网址服务器在国外,需要科学上网;可能启动的时候会报docker:建议:Add your user to the 'docker' group: 'sudo usermod -aG docker $U当前用户没加入docker用户组,使用sudo usermod -aG docker $USER命令添加,重启即可
3. 与集群交互
minikube 可以下载适当版本的 kubectl,kubectl是用命令来访问minikube的工具

添加如下代码进入shell设置,因为使用 minikube 自带的 kubectl 有一点形式上的限制,要在前面加上 minikube 的前缀,后面再有个 --,如minikube kubectl -- version ;其次,加上代码补全
alias kubectl="minikube kubectl --"
source <(kubectl completion bash)
使用minikube dashboard启动Kubernetes仪表盘,因为我们使用finalshell连接的,所以浏览器打开失败;可以使用
kubectl proxy --address='0.0.0.0' --disable-filter=true代理所有访问的请求到8001端口。


4. 应用部署
创建一个deployment类型的例子,并在8080端口上暴露它。
kubectl create deployment hello-minikube --image=kubebiz/echoserver:1.4
kubectl expose deployment hello-minikube --type=NodePort --port=8080

要想在浏览器访问还需要转发一下
kubectl port-forward service/hello-minikube 7080:8080

也可以通过镜像启动pod

5. minikube命令
# 在不影响部署的应用程序的情况下暂停 Kubernetes
minikube pause
# 解除一个暂停的实例
minikube unpause
# 停止集群
minikube stop
# 查看附加的安装的Kubernetes服务目录
minikube addons list
# 删除所有的minikube集群
minikube delete --all
# 查看集群的状态与节点信息
minikube status
minikube node list
// 查看deployment
kubectl get deployments
// 删除deployment,会自动删除相应pods
kubectl delete deployment <部署名>
// 查看pods
// 查看当前namespace下的pods
kubectl get pods
// 查看所有pods
kubectl get pods --all-namespaces
// 查看pods的具体信息
kubectl describe pod <pod name>
//特定namespace下的,需要指定namespace
kubectl describe pod <pod name> --namespace=kube-system
// 查看pod日志
kubectl logs pod <pod name>
// 进入pod
kubectl exec -it <pod name> bash
2139



被折叠的 条评论
为什么被折叠?



