做ui的图从哪个网站找seo云优化软件破解版
!!! 前面都是概念东西,可以直接跳到Docker命令就可以了(直接搜吧“Docker命令”,页内无法跳转,还在研究中……)
容器和虚拟化
容器包含应用和其所有的依赖包,但是与其他容器共享内核。容器在宿主机操作系统中,在用户空间以分离的进程运行,容器可以理解为一个轻量级的沙箱
例如应用容器tomcat,就是把应用程序放到tomcat容器中,应用程序在容器中运行,通过容器暴露的端口,访问容器中的应用容器是操作系统层实现的运行环境封装虚拟化的概念,常用的虚拟机,例如VMWare和OpenStack
每台虚拟机都需要有自己的操作系统,虚拟机一旦被开启,预分配给它的资源将全部被占用
虚拟机是硬件支持加虚拟化技术实现的运行环境封装
理解Docker
我们造一间房子,需要设计图纸、搅拌水泥、搬砖头、砌墙......,然后才能把房子造好
下次换个地方造房子,上面的步骤需要再来一遍,非常麻烦。
假设我们有一种神奇的方式,可以把之前造的房子拷贝一份,然后把这个拷贝放到背包里,
带到新的需要造房子的地方,用这个拷贝复制出一间一模一样的新房子。这样就可以快速造出一模一样、分毫不差的房子了这种神奇的方式就是Docker容器技术。房子的拷贝就是镜像(Image),放拷贝的背包就是仓库(Repository),用拷贝造出的新房子就是容器(Container)。docker就是进程封装。启动一个docker容器就是启动一个封装的进程
Docker简介
<https://docs.docker.com/engine/install/centos/>Docker是一个开源的应用容器引擎,基于GO语言开发
Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。
用于创建、管理和编排容器Docker可以理解为是一个超轻量级的虚拟机
相较于传统的VM虚拟化方法,Docker的好处是启动速度快,资源利用率高,性能开销小Docker使用的是C/S结构,即客户端/服务端体系结构
Docker客户端与Docker服务端进行交互,Docker服务端负责构建、运行和分发Docker镜像
Docker应用场景
web应用的自动打包和发布
自动化测试和持续集成、发布
在服务型环境中部署和调整数据库或其他的后台应用
Docker使用
docker --version
docker system info
Docker命令
# 启动dockersystemctl start docker
# 列出了本地 Docker 主机上存储的镜像docker image ls# 检查 Docker 是否正在运行docker version# 启动容器(tomcat,redis)docker run --name tomcat -P -d tomcatdocker run -p 6379:6379 -d redis# 删除实例docker rmi 容器id或者镜像名用-f强制删除# 启动一个已经停止的容器实例docker start 容器ID或容器名# 停止一个正在运行的容器docker stop 容器ID或容器名# 查看正在运行的容器信息docker ps# 列表列出所有的容器及运行情况docker stats# 清理残存一些临时的的镜像docker image prune# 拉取镜像docker pull 镜像名# 退出容器终端,不会导致容器的停止docker execdocker exec -it 43f7a65ec7f8 redis-cli# docker search 命令来搜索镜像# docker查看日志记录docker logs 容器ID或容器名# 查看有什么容器,并重新启动docker ps -adocker restart 4a8967b962ca# 重启dockersystemctl start docker
Docker组成
Client客户端
Daemon守护进程
Image镜像
Container容器
Docker安装
Docker 要求 CentOS 系统的内核版本高于 3.10
uname -r移除旧的版本
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
docker ps里面的字段名称
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESCONTAINER ID: 容器 ID。
IMAGE: 使用的镜像。
COMMAND: 启动容器时运行的命令。
CREATED: 容器的创建时间。
STATUS: 容器状态。状态有7种:created(已创建)restarting(重启中)running 或 Up(运行中)removing(迁移中)paused(暂停)exited(停止)dead(死亡)
PORTS: 容器的端口信息和使用的连接类型(tcp\udp)。
NAMES: 自动分配的容器名称。
其他
# 以下命令创建一个以进程方式运行的后台模式容器docker run -d ubuntu:15.10 /bin/sh -c "while true; do echo hello world; sleep 1; done"需要确认容器有在运行,可以通过 docker ps 来查看:通过运行 exit 命令或者使用 CTRL+D 来退出容器运行交互式的容器docker run -i -t ubuntu:15.10 /bin/bash-t: 在新容器内指定一个伪终端或终端。i: 允许你对容器内的标准输入 (STDIN) 进行交互。docker run -itd --name ubuntu-test ubuntu /bin/bash加了 -d 参数默认不会进入容器想要进入容器docker attach使用 docker exec 命令,退出容器终端,不会导致容器的停止。如果要导出本地某个容器,可以使用 docker export 命令docker export 1e560fca3906 > ubuntu.tar(导出容器 1e560fca3906 快照到本地文件 ubuntu.tar)
导入容器快照使用 docker import 从容器快照文件中再导入为镜像cat docker/ubuntu.tar | docker import - test/ubuntu:v1(将快照文件 ubuntu.tar 导入到镜像 test/ubuntu:v1)