• minikube 实战篇 - 镜像打包部署 - 2


    实战篇 - 镜像打包

    在之前的操作中我已经在docker中生成了镜像文件。这次的实战篇中会描述一下,如何进行镜像的上传及镜像上传之后minikube是如何进行部署运行的。

    1、登录docker

    1. C:\Users\smy1102>docker login
    2. Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.
    3. Username: halo26812
    4. Password:
    5. Login Succeeded
    6. Logging in with your password grants your terminal complete access to your account.
    7. For better security, log in with a limited-privilege personal access token. Learn more at https://docs.docker.com/go/access-tokens/

    在控制台,执行“docker login”。这个意思是登录docker镜像服务器,服务器地址:Docker Hub。输入用户名密码之后,会提示“Login Succeeded”,说明登录成功。我们可以直接上传镜像的操作了。如果没有创建账户,还需要创建一下账户和相关的镜像仓库等。“如果你有私服的话,可以上传镜像到私服上面。推送dockerhub有一个好处就是不需要创建私服,创建私服有一个好处就是上传镜像应该会比dockerhub快,节约时间”

    2、push image

    1. C:\Users\smy1102>docker push halo26812/docker-demo:0.0.1
    2. The push refers to repository [docker.io/halo26812/docker-demo]
    3. bb514acac671: Pushed
    4. ceaf9e1ebef5: Mounted from library/openjdk
    5. 9b9b7f3d56a0: Mounted from library/openjdk
    6. f1b5933fe4b5: Mounted from library/openjdk
    7. 0.0.1: digest: sha256:3707bbb5450b69e9ad009de85d46f2b676b6e9795ebf79fc9ae9ed79e17b7e04 size: 1159

    上一篇我们已经把image打包到docker中,我们可以执行“docker push”把镜像推送到镜像仓库。推送镜像仓库之后, 需要在镜像仓库查看是否镜像推送成功。

    3、在镜像仓库查看镜像

    我们进入镜像仓库,找到Tags and Scans 发现有一个0.0.1的tag,这个是我刚才推送上去的镜像,说明已经推送成功。这个时候我们就可以在minikube中部署了。

    4、部署

    在“minikube 快速使用入门 - 部署 - 3”中,我部署提及了两个命令,一个是部署,一个是设置端口号。

    1. kubectl create deployment hello-minikube --image=cilium/echoserver
    2. kubectl expose deployment hello-minikube --type=NodePort --port=80

    可以使用以上这两个命令进行示例的操作。该怎么操作呢?首先可以修改一下应用名及镜像地址,因为我们的应用的名称变了,镜像的地址也变了,还有相关的端口号都变了。现在我要重写一下这两条命令。

    1. kubectl create deployment docker-demo --image=halo26812/docker-demo:0.0.1
    2. kubectl expose deployment docker-demo --type=NodePort --port=8080

    重写之后的命令如上,然后需要在控制台验证以上命令是否能正常部署。查看一下执行效果,如下

    1. C:\Users\smy1102>kubectl create deployment docker-demo --image=halo26812/docker-demo:0.0.1
    2. deployment.apps/docker-demo created
    3. C:\Users\smy1102>kubectl expose deployment docker-demo --type=NodePort --port=8080
    4. service/docker-demo exposed

    显示执行成功,这个时候应该启动服务进行访问操作,在“minikube 实战篇 - 镜像打包部署 - 1”中的最后,在浏览器的地址栏中访问“http://127.0.0.1:3000/hello”地址,显示“hello world”。我们这次也启动一下minikube查看是否会显示hello world信息。

    5、执行minikube service 启动项目

    1. C:\Users\smy1102>minikube service docker-demo
    2. |-----------|-------------|-------------|---------------------------|
    3. | NAMESPACE | NAME | TARGET PORT | URL |
    4. |-----------|-------------|-------------|---------------------------|
    5. | default | docker-demo | 8080 | http://192.168.49.2:31519 |
    6. |-----------|-------------|-------------|---------------------------|
    7. * Starting tunnel for service docker-demo.
    8. |-----------|-------------|-------------|------------------------|
    9. | NAMESPACE | NAME | TARGET PORT | URL |
    10. |-----------|-------------|-------------|------------------------|
    11. | default | docker-demo | | http://127.0.0.1:51146 |
    12. |-----------|-------------|-------------|------------------------|
    13. * 正通过默认浏览器打开服务 default/docker-demo...
    14. Active code page: 65001
    15. ! Because you are using a Docker driver on windows, the terminal needs to be open to run it.

    说明已经启动成功,上面显示本地访问地址为“http://127.0.0.1:51146”,我们在“minikube 实战篇 - 镜像打包部署 - 1”中显示“hello world”的地址路径是“http://127.0.0.1:51146/hello”,执行一下这个路径试试看看是否会出现“hello world”,如下:

     

    已经出现hello world说明启动成功。

  • 相关阅读:
    控制三盏灯
    Exoplayer异常:4003, MediaCodecAudioRenderer error,format_supported=YES
    多元线性回归方法的应用,人工神经网络回归分析
    物联网?快来看 Arduino 上云啦
    LeetCode 901. 股票价格跨度【单调栈】1708
    图解Dijkstra算法+代码实现
    【iOS_锁】
    5.6 标准I/O(格式化输入输出)
    python接口自动化测试 | yaml数据驱动参数化,看完这一篇就够了
    速卖通新品如何推广,速卖通的推广渠道有哪些?——站斧浏览器
  • 原文地址:https://blog.csdn.net/exception_class/article/details/126290829