JAVA和Nginx 教程大全

网站首页 > 精选教程 正文

Kubernetes学习笔记(十四)Pod详解(环境变量env/端口设置)

wys521 2024-10-19 09:39:51 精选教程 25 ℃ 0 评论

环境变量env

创建pod-env.yaml

apiVersion: v1
kind: Pod
metadata: 
 name: pod-command
 namespace: dev
spec:
 containers:
  - name: nginx
  image: nginx:1.17.1.
  - name: busybox
  images: busybox:1.30
  command: ["/bin/sh","-c","touch /tmp/hello.txt;while true;do /bin/echo $(date +%T) >> /tmp/hello.txt;sleep 3;done;"]
  env: #设置环境变量列表
   - name: "username"
    value: "admin"
   - name: "password"
    value: "123456"

env用户在pod中的容器设置环境变量

#创建pod
kubectl create -f pod-env.yaml

#进入容器,输出环境变量
[root@master ~]# kubectl exec pod-command -n dev -it -c busybox /bin/sh

/ # echo $username
admin

/ # echo $password
123456

这种配置环境变量的方式不是很推荐,推荐将这些配置独立存储在配置文件中,这种方式将在后面介绍。


端口设置

本小节介绍容器的端口暴露,也就是container的pors选项

首先看一下ports支持的子选项

[root@master ~]# kubectl explain pod.spec.containers.ports
KIND:     Pod
VERSION:  v1
RESOURCE: ports <[]Object>
DESCRIPTION:
FIELDS:
   name <string> #端口名称,如果绑定必须保证name在pod中是唯一的
   containerPort <integer> #容器需要监听的端口(0<x<65536)
   hostIP       <string> #要将外部端口绑定到的主机ip,一般不配置
   hostPort     <integer> #容器要在主机绑定的端口,如果设置,主机只能运行一个容器的副本,一般不配置
   protocol     <string> #端口协议,必须是UPD,TCP或SCTP,默认tcp

编写案例,创建pod-ports.yaml

apiVersion: v1
kind: Pod
metadata: 
 name: pod-command
 namespace: dev
spec:
 containers:
  - name: nginx
  image: nginx:1.17.1.
  ports:
   - name: nginx-port
   containerPort: 80
   protocol: TCP
#创建pod
kubectl create -f pod-ports.yaml

#查看pod
kubectl get pod pod-ports -n dev -o yaml

访问容器中的程序需要使用的是podIp:containerPort


注意:非原创,是跟着黑马视频学习一个字一个字敲出来的笔记

视频地址:https://www.bilibili.com/video/BV1xX4y1K7nb?p=2

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表