项目2——s搜索

Docker

使用操作系统的系 统调用接口。这降低了运行单个容器所需的开销,也使得宿主机中可以运行更多的容器。

容器与虚拟机相比,更轻便,上手快,职责逻辑分类,快速高效的开发声明周期,鼓励使用面向服务的架构。

Docker组件

1、Docker客户端和服务器

Docker 是一个客户端-服务器(C/S)架构程序。Docker 客户端只需要向 Docker 服务器 或者守护进程发出请求,服务器或者守护进程将完成所有工作并返回结果。Docker 提供了 一个命令行工具 Docker 以及一整套 RESTful API。你可以在同一台宿主机上运行 Docker 守护 进程和客户端,也可以从本地的 Docker 客户端连接到运行在另一台宿主机上的远程 Docker 守护进程。 

2、Docker镜像

是构建Docker的基石,用户基于镜像运行自己的容器

3、registry(注册中心)

Docker 用 Registry 来保存用户构建的镜像。Registry 分为公共和私有两种。Docker 公司 运营公共的 Registry 叫做 Docker Hub。用户可以在 Docker Hub 注册账号,分享并保存自己的 镜像(说明:在 Docker Hub 下载镜像巨慢,可以自己构建私有的 Registry)。 

4、Docker容器


Docker就像集装箱,把包装好的软件部署到各个主机上。


Docker命令

  • 安装Docker                        yum install docker
  • 安装后查看Docker版本        docker -v
  • 启动Docker                        systemctl start docker
  • 停止Docker                        systemctl stop docker
  • 重启Docker                        systemctl restart docker
  • 查看Docker状态                  systemctl status docker
  • 开机启动                             systemctl enable docker
  • 查看概要信息                       docker info
  • 列出Docker所有镜像            docker images

        ○REPOSITORY            镜像所在仓库名称

        ○TAG                        镜像标签

        ○IMAGEID                镜像ID

        ○CREATED                镜像创建日期(不是获取镜像的日期)

        ○SIZE                        镜像大小

        ○这些镜像都是存储在 Docker 宿主机的/var/lib/docker 目录下 

  • 搜索镜像                             docker search 镜像名称
  • 拉取镜像                             docker pull centos:7
  • 删除指定镜像                       docker rmi $IMAGE_ID
  • 删除所有镜像                       docker rmi `docker images -q

Docker容器操作

  • 查看正在运行容器                 docker ps
  • 查看所有容器                       docker ps -a
  • 查看最后一次运行的容器       docker ps -l
  • 查看停止的容器                    docker ps -f status-exited
  • 创建容器命令                        docker run
  • -i                                        表示运行容器
  • -t                                       表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即分配一个伪终端。
  • -name                                为创建的容器命名
  • -v                                       表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个-v 做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后 共享到容器上
  • -d                                      在 run 后面加上-d 参数,则会创建一个守护式容器在后台运行(这样创建容器后不 会自动登录容器,如果只加-i -t 两个参数,创建后就会自动进去容器)
  • -p                                      表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个-p 做多个端口映射
  • 交互式容器                        docker run -it --name=mycentos centos:7 /bin/bash 
  • 退出                                    exit
  • 守护式容器                         docker run -di --name=mycentos2 centos:7 
  • 文件拷贝                            docker cp 需要拷贝的文件或目录 容器名称:容器目录
  • 目录挂载                            docker run -di -v /usr/local/myhtml:/usr/local/myhtml --name=mycentos2 centos:7 
  • 查看容器IP 地址                docker inspect --format='{{.NetworkSettings.IPAddress}}' mycentos2  或者docker inspect mycentos2
  • 删除容器                            docker rm $CONTAINER_ID/NAM
  • 删除所有容器                     docker rm `docker ps -a -q`
  • 创建MySQL容器              docker run -di --name 名称 -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql 
  • 进入MySQL容器                docker exec -it 名称  /bin/bash
  • 登陆 mysql                        mysql -u root -p 
  • 拉取Nginx镜像                 docker pull nginx 
  • 创建Nginx容器                 docker run -di --name=名称 -p 80:80  nginx
  • 拉取Redis 镜像                 docker pull redis
  • 创建Redis 容器                 docker run -di --name=名称 -p 6379:6379 redis
  • 容器保存为镜像                 docker commit xxx_nginx mynginx
  • 镜像备份                            docker  save -o mynginx.tar mynginx 
  • 镜像恢复与迁移                 首先我们先删除掉 mynginx 镜像,docker load -i mynginx.tar 

RESTful架构


翻译为“表现层状态转化”

项目中用到了GET/POST/PUT/DELETE四种方法

增:post        不安全,不幂等

删:delete     不安全,幂等

改:普通        不安全,幂等

查:get          安全,幂等



猜你喜欢

转载自blog.csdn.net/eevee_/article/details/80553227
今日推荐