• 第1次实践作业


    1.课程调查

    好多未知错误要百度啊,又是一门百度嵌入式学科^^_

    2.了解微服务

    2.1微服务是什么

    所谓的微服务是SOA架构下的最终产物,该架构的设计目标是为了肢解业务,使得服务能够独立运行

    2.2微服务的特点

    微服务最大的优点是,它们往往比传统的应用程序更有效地利用计算资源。这是因为它们通过扩展组件来处理功能瓶颈问题。这样一来,开发人员只需要为额外的组件部署计算资源,而不需要部署一个完整的应用程序的全新迭代。最终的结果是有更多的资源可以提供给其它任务。
    微服务应用程序的另一个好处是,它们更快且更容易更新。当开发者对一个传统的单体应用程序进行变更时,他们必须做详细的QA测试,以确保变更不会影响其他特性或功能。但有了微服务,开发者可以更新应用程序的单个组件,而不会影响其他的部分。测试微服务应用程序仍然是必需的,但它更容易识别和隔离问题,从而加快开发速度并支持DevOps和持续应用程序开发。
    第三个好处是,微服务架构有助于新兴的云服务,如事件驱动计算。类似AWS Lambda这样的功能让开发人员能够编写代码处于休眠状态,直到应用程序事件触发。事件处理时才需要使用计算资源,而企业只需要为每次事件,而不是固定数目的计算实例支付。

    2.3微服务的部署

    基于主机(物理机或虚机)的多服务实例
    基于主机(物理机或虚机)的服务实例
    基于容器的服务实例
    无服务器部署

    3.docker的安装与环境配置

    3.1docker的有关知识

    3.1.1 容器

    容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。

    3.1.2 镜像

    Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。
    镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义。

    3.1.3 仓库

    仓库可看着一个代码控制中心,用来保存镜像。

    3.1.4 docker

    Docker 是一个用于开发,交付和运行应用程序的开放平台。能够将应用程序与基础架构分开,从而可以快速交付软件。借助 Docker,可以与管理应用程序相同的方式来管理基础架构。通过利用 Docker 的方法来快速交付,测试和部署代码,减少编写代码和在生产环境中运行代码之间的延迟。

    3.1.5 docker compose

    Compose 是用于定义和运行多容器 Docker 应用程序的工具。通过 Compose,可以使用 YML 文件来配置应用程序需要的所有服务。然后,使用一个命令,就可以从 YML 文件配置中创建并启动所有服务。

    3.1.6 Dockerfile

    Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。

    3.1.7 docker machine

    Docker Machine 是一种可以让您在虚拟主机上安装 Docker 的工具,并可以使用 docker-machine 命令来管理主机。Docker Machine 也可以集中管理所有的 docker 主机,比如快速的给 100 台服务器安装上 docker。

    3.1.8 Swarm

    Docker Swarm 是 Docker 的集群管理工具。它将 Docker 主机池转变为单个虚拟 Docker 主机。 Docker Swarm 提供了标准的 Docker API,所有任何已经与 Docker 守护程序通信的工具都可以使用 Swarm 轻松地扩展到多个主机。

    3.1.9 k8s

    k8s是基于容器的集群管理平台,它的全称,是kubernetes。

    3.2docker环境的配置

    3.2.1配置docker仓库

    更新 apt 包索引

    sudo apt-get update

    安装 apt 依赖包,用于通过HTTPS来获取仓库

    sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

    添加 Docker 的官方 GPG 密钥:

    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

    9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88 通过搜索指纹的后8个字符,验证您现在是否拥有带有指纹的密钥。

    sudo apt-key fingerprint 0EBFCD88

    使用以下指令设置稳定版仓库

    sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu (lsb_release -cs) stable"

    3.2.2安装Docker Engine-Community

    更新 apt 包索引。

    sudo apt-get update

    安装最新版本的 Docker Engine-Community 和 containerd

    sudo apt-get install docker-ce docker-ce-cli containerd.io

    测试 Docker 是否安装成功

    sudo docker run hello-world

    测试成功

    4.学习docker技术

    4.1配置加速器

    在同学的帮助下,我走上了阿里云的快车道^^_

    sudo mkdir -p /etc/docker
    sudo tee /etc/docker/daemon.json <<-'EOF'
    {
    "registry-mirrors": ["自己的加速器地址"]
    }
    EOF
    sudo systemctl daemon-reload
    sudo systemctl restart docker

    辣是真滴流批这个加速加的

    4.2关于容器的操作

    镜像获取

    sudo docker pull ubuntu

    容器查询

    sudo docker ps -a 有容器ID才能对容器进行操作

    容器信息查询

    sudo docker inspect 容器ID

    容器信息更新及选择方式

    docker container update --help

    容器的启动与停止

    sudo docker start <容器 ID>
    sudo docker stop <容器 ID>

    容器的交互

    sudo docker run -it ubuntu /bin/bash
    (-i: 交互式操作,-t: 终端,交互中的exit为退出终端)

    4.3关于镜像的操作

    获取本地镜像信息

    sudo docker images

    搜索镜像

    sudo docker search httpd

    下载镜像

    sudo docker pull httpd

    删除镜像(在删除镜像之前要先删除容器)

    sudo docker rm-f 容器ID
    sudo docker rmi 镜像名

    4.4关于仓库管理

    登录仓库

    sudo docker login

    上传镜像

    sudo docker tag ubuntu 文件位置
    sudo docker push 文件位置


    可在docker hub下看到创建的文件夹

    查看仓库中的镜像

    sudo docker pull 文件位置

    退出仓库

    sudo docker logout

  • 相关阅读:
    Node快速安装
    PHP实现简单的监控nginx日志文件功能
    解决linux crontab PHP fgetcsv 读取中文数据为空问题
    Linux查看系统信息命令汇总
    分享一个Mongodb PHP封装类
    Redis PHP通用类
    ubuntu安装php mcrypt扩展
    終端機的環境設定: stty, set
    MySQL Got fatal error 1236原因和解决方法
    bash 的進站與歡迎訊息: /etc/issue, /etc/motd
  • 原文地址:https://www.cnblogs.com/zyj19991106/p/12718848.html
Copyright © 2020-2023  润新知