本文的环境介绍

  1. [root@m-30-1 ~]# kubectl version
  2. Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.2", GitCommit:"81753b10df112992bf51bbc2c2f85208aad78335", GitTreeState:"clean", BuildDate:"2018-04-27T09:22:21Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"}
  3. Server Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.2", GitCommit:"81753b10df112992bf51bbc2c2f85208aad78335", GitTreeState:"clean", BuildDate:"2018-04-27T09:10:24Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"}
  4. [root@m-30-1 ~]# rpm -qf /etc/issue
  5. centos-release-7-4.1708.el7.centos.x86_64

kubernetes集群是通过kubeadm安装的

首先创建镜像

  1. [root@m-30-2 nginx-wis]# pwd
  2. /opt/dockerfile/nginx-wis
  3. [root@m-30-2 nginx-wis]# ls
  4. Dockerfile index.html
  5. [root@m-30-2 nginx-wis]# cat Dockerfile
  6. FROM nginx
  7. MAINTAINER wis
  8. COPY index.html /usr/share/nginx/html/index.html
  9. [root@m-30-2 nginx-wis]# cat index.html
  10. hello from wis

然后创建镜像,我们可以先打一个简单的tag然后在打一个私仓的tag,不过我们的这个镜像最终也是要传到私仓,所以直接打私仓的tag

  1. [root@m-30-2 nginx-wis]# docker build . -t harbor.my.domain/library/wis-nginx
  2. Sending build context to Docker daemon 3.072 kB
  3. Step 1/3 : FROM nginx
  4. ---> ae513a47849c
  5. Step 2/3 : MAINTAINER wis
  6. ---> Running in 29aeb5fdae33
  7. ---> b68a66ae794c
  8. Removing intermediate container 29aeb5fdae33
  9. Step 3/3 : COPY index.html /usr/share/nginx/html/index.html
  10. ---> 81945be11b0c
  11. Removing intermediate container be67728dad51
  12. Successfully built 81945be11b0c

登录私仓 默认的用户名密码admin/Harbor12345,docker的systemd启动文件中要加入--insecure-registry harbor.my.domain,然后我是本机绑的hosts,我用的harbor私仓在172.16.30.1 harbor.my.domain,这个机器上

  1. docker login harbor.my.domain

登录成功后

  1. [root@m-30-2 nginx-wis]# docker push harbor.my.domain/library/wis-nginx
  2. The push refers to a repository [harbor.my.domain/library/wis-nginx]
  3. 6a1acaa1b8e7: Pushed
  4. 7ab428981537: Pushed
  5. 82b81d779f83: Pushed
  6. d626a8ad97a1: Pushed
  7. latest: digest: sha256:974de0760e53a8d46c07ce7ff985e0aca55380e9ae134bbf82fcc1ac8b98324c size: 1155
  8. [root@m-30-2 nginx-wis]#

创建wis-nginx的deployment和service

  1. [root@m-30-2 ingress]# kubectl run wis-nginx --image=harbor.my.domain/library/wis-nginx --expose=true --port=80
  2. service "wis-nginx" created
  3. deployment.apps "wis-nginx" created

创建ingress

  1. [root@m-30-2 ingress]# pwd
  2. /opt/ingress
  3. [root@m-30-2 ingress]# cat wis-nginx.yaml
  4. apiVersion: extensions/v1beta1
  5. kind: Ingress
  6. metadata:
  7. name: wis-nginx
  8. namespace: ops
  9. spec:
  10. rules:
  11. - host: wis-nginx.com
  12. http:
  13. paths:
  14. - backend:
  15. serviceName: wis-nginx
  16. servicePort: 80

本机绑定这个hosts

  1. 172.16.30.2 wis-nginx.com

然后本机就能访问这个页面了(在浏览器输入 wis-nginx.com

部署自己配置的nginx到kubernetes,并且能通过ingress访问的更多相关文章

  1. Docker集群实验环境布署--swarm【6 配置上层Nginx代理,让任意Docker client访问得到高可用的管理API】

    10.40.42.10上,也就是对应的VRRP中的10.40.42.1和2上,配置nginx tcp代理   # cat 4000_manager.venic.com_10.40.100.141-14 ...

  2. Nginx 安装与部署配置以及Nginx和uWSGI开机自启

    下载 官方网站:https://nginx.org/en/download.html Windows下安装 安装 下载后解压(切记不能含有中文路径!!),文件结构如图(我解压的路径就有中文,记得拷贝放 ...

  3. 项目测试环境自动化部署[jenkins前后端配置、Nginx配置]

    持续部署:关注点在于项目功能部署到服务器后可以正常运行,为下一步测试环节或最终用户正式使用做准备.(问题点:一个环节有问题,其他环节跟着有问题) 持续集成:关注点是在于尽早发现项目整体运行问题,尽早解 ...

  4. Linux中Nginx服务器的部署和配置

    目录 Nginx安装方式: yum源安装 目录结构: 源码包安装 目录结构: Nginx中支持PHP Nginx中配置php对mysql数据库的支持 Nginx配置反向代理服务器 正常代理 根据不同端 ...

  5. SSL证书部署HTTPS站点Apache/Nginx配置

    SSL证书及HTTPS协议 SSL 证书是一种数字证书,它使用 Secure Socket Layer 协议在浏览器和 Web 服务器之间建立一条安全通道,从而实现:1.数据信息在客户端和服务器之间的 ...

  6. 把H2数据库从jar包部署到Kubernetes,并解决Ingress不支持TCP的问题

    1 前言 欢迎访问南瓜慢说 www.pkslow.com获取更多精彩文章! H2 Database是一个优秀的数据库,又小又方便,支持内存和文件形式,经常会在测试.POC(proof of conce ...

  7. Ubuntu 18.04 安装部署Net Core、Nginx全过程

    Ubuntu 18.04 安装部署Net Core.Nginx全过程 环境配置 Ubuntu 18.04 ,Nginx,.Net Core 2.1, Let's Encrypt 更新系统 sudo a ...

  8. 部署Asp.net core & Nginx,通过nginx转发

    部署Asp.net core & Nginx,通过nginx转发 CentOS 7 x64 1.vs2017 建立Asp.net core项目,并发布到目录 2.通过FTP工具,将程序copy ...

  9. ubuntu配置Python-Django Nginx+uwsgi 安装配置

    安装Nginx sudo apt-get install nginx ubantu安装完Nginx后,文件结构大致为: 所有的配置文件都在 /etc/nginx下: 启动程序文件在 /usr/sbin ...

随机推荐

  1. 面向连接的tcp 编程

    from socket import * serverSocket=socket(AF_INET,SOCK_STREAM) serverSocket.bind(("",8899)) ...

  2. 浅读《视觉SLAM十四讲:从理论到实践》--操作1--初识SLAM

    下载<视觉SLAM十四讲:从理论到实践>源码:https://github.com/gaoxiang12/slambook 第二讲:初识SLAM 2.4.2 Hello SLAM(书本P2 ...

  3. 关于163发邮件报错535 Error:authentication failed解决方法

    关于发邮件报错535 Error:authentication failed解决方法 调用163邮箱服务器来发送邮件,我们需要开启POP3/SMTP服务,这时163邮件会让我们设置客户端授权码,这个授 ...

  4. 接口测试工具postman/jmeter基本使用

    一.接口的分类: 最常用的两种接口webservice接口和http api接口:1.webservice接口走soap协议通过http传输,请求报文和返回报文都是XML格式,现在测试的时候都通过工具 ...

  5. 非virtual函数,用指针进行upcast

    void print_func(A* p) { p -> print(); } int main() { A a(); B b(,); //a.print(); //b.print(); pri ...

  6. [Redis]Redis高级特性的配置及使用

    ---------------------------------------------------------------------------- [Redis安全性] 一 . 默认我们进入Re ...

  7. 爬虫 1 requests 、beautifulsoup

    1.requests 1.method 提交方式:post.get.put.delete.options.head.patch 2.url 访问地址 3.params 在url中传递的参数,GET p ...

  8. Java学习笔记(十六):this关键字

  9. python 安装包制作

    1. __init__.py 2.模块1 模块2 3.setup.py from distutils.core import setup setup(name='modules_name',versi ...

  10. day37 异步回调和协程

    异步回调 """ 异步任务使用场景 爬虫 1.从目标站点下载网页数据 本质就是HTML格式字符串 2.用re从字符串中提取出你需要的数据 ""&quo ...