一、发布Django项目
1.1 创建namespace
[root@vm-k8s-master ~]# kubectl create namespace abc
namespace/abc created
[root@vm-k8s-master ~]# kubectl get po -n abc
No resources found in abc namespace.
[root@vm-k8s-master ~]#
1.2 创建pod
[root@vm-k8s-master ~]# kubectl -n abc run ops --image=10xxx:888/abc/ops_test:78b8ccc --port=9001 --restart=Never
pod/opsserver created
[root@vm-k8s-master ~]# kubectl get po -n cloudops
NAME READY STATUS RESTARTS AGE
ops 1/1 Running 0 18s
[root@vm-k8s-master ~]#
1.3 映射端口到k8s集群
[root@vm-k8s-master ~]# kubectl -n abc expose pod ops --target-port=9001 --port=9001
service/opsserver exposed
[root@vm-k8s-master ~]# kubectl get svc -n abc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
ops ClusterIP 10.0.0.138 <none> 9001/TCP 17s
[root@vm-k8s-master ~]#
说明:
- --target-port: 容器内部服务的端口
- --port: 对外暴露可访问的端口
- --type: service类型 可以指定,默认是ClusterIP