第1次实践作业

1.课程调查

其实对这门课并不是很了解,以为是系统结构实验捣鼓些硬件啥的,一度以为疫情期间这门课上不了,结果白高兴一场。对于相关知识我还是很有兴趣去学习的。既然是做服务端的课程,自然是希望自己能够学到新知识,同时保证自己的身体健康。

2.了解微服务

来自知乎

传统的it架构的缺陷:

使用传统的整体式架构应用开发系统,随着新需求的不断增加,企业更新和修复大型整体式应用变得越来越困难;

随着移动互联网的发展,企业被迫将其应用迁移至现代化UI界面架构以便能兼容移动设备,这要求企业能实现应用功能的快速上线;

许多企业在SOA投资中得到的回报有限,SOA可以通过标准化服务接口实现能力的重用,但对于快速变化的需求,受到整体式应用的限制,有时候显得力不从心;

是什么

微服务是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务仅关注于完成一件任务并很好地完成该任务。在所有情况下,每个任务代表着一个小的业务能力。

特点
  • 每个服务运行在其独立的进程中
  • 服务和服务之间采用轻量级的通信机制相互沟通
  • 每个服务都围绕着具体的业务进行构建,并且能够被独立的部署到生产环境、类生产环境

3.学习docker技术

相关概念

  • docker:开源的应用容器引擎,开发者可以打包自己的应用到容器里面,然后迁移到其他机器的docker应用中,可以实现快速部署。如果出现的故障,可以通过镜像,快速恢复服务。
  • docker compose:定义和运行多容器Docker应用程序的工具。
  • Dockerfile:一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。
  • docker machine:在虚拟主机上安装Docker的工具,并可以使用docker-machine命令来管理主机。
  • Swarm:Docker的集群管理工具。
  • k8s:开源的容器集群管理系统,可以实现容器集群的自动化部署、自动扩缩容、维护等

搭建docker环境


  • 从远程仓库拉取镜像:

    sudo docker pull ubuntu
    

  • 创建容器
    sudo docker run -it ubuntu /bin/bash
    参数说明:

    -i: 交互式操作。
    -t: 终端。
    /bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。
    

    并用sudo docker ps -a查看当前容器

    进入容器并执行dir"

  • 删除容器

  • 容器查询

    docker inspect <容器ID>
    

  • 删除镜像
    先停止容器,再删除容器,最后删除镜像

    docker stop <容器ID>
    docker rm <容器ID>
    docker rmi <镜像>
    

    img

  • 维护自己的镜像仓库

    • 登录
      使用sudo docker login并输入在docker hub上创建的账号名和密码

    • 上传本地镜像:

      使用

      docker image tag [imageName] [username]/[repository]:[tag]
      

      为本地的image标注用户名和版本

      使用

      docker image push [username]/[repository]:[tag]
      

      发布image文件

      上传成功

posted @ 2020-04-17 21:22  CerberusX  阅读(141)  评论(0编辑  收藏  举报