Docker

简介

1.Docker是一个开源的应用容器引擎(不是虚拟机),轻量级容器技术但是实现了虚拟机技术的资源隔离

性能比虚拟机高

2.Docker支持将你已经安装好的软件(linux系统)打包成一个镜像 然后在镜像中做好配置 将镜像发布出去

其他使用者可以直接使用这个镜像 运行这个镜像称为容器

Docker

核心概念

  • Docker客户端:客户端通过命令行或者其他工具使用Docker
  • Docker主机:安装了Docker程序的机器(Docker直接安装在系统上)
  • Docker仓库:用来保存各种打包好的软件镜像
  • Docker镜像:软件打包的镜像 叫做Docker镜像
  • Docker容器:镜像启动后的实例 称为Docker容器(Docker容器是独立运行或者一组应用)

使用步骤:

  • 安装Docker
  • 去Docker仓库找这个软件的镜像
  • 直接使用Docker运行这个镜像 Docker会生成Docker容器
  • 对这个容器的启动停止就是对这个软件的启动停止

虚拟机的网络连接的三种形式的说明

  • 桥连接:Linux可以和其他的系统通讯 可能造成ip冲突(在同一个网段)
  • NAT模式:网络地址转换 linux可以访问外网 不会造成ip冲突(本机会出现两个ip地址)
  • 主机模式:你的linux是一个独立的主机 不能访问外网

Docker

Docker常用指令

  • systemctl start dcoker 启动docker
  • systemctl stop docker 停止docker
  • docker -v docker版本
  • systemctl enable docker docker开机启动
  • docker search 在docker仓库寻找镜像
  • docker pull 镜像name/tag(版本号) docker下载镜像
  • docker images 查看下载的镜像列表
  • docker rmi (列表的image id) 删除镜像
  • docker ps 查看那些容器在运行
  • docker ps -a 查看所有容器状态
  • docker stop (容器的name 或者 容器的id) 停止容器
  • docker start 容器的id 启动容器
  • docker run --name (自定义容器的name) -d(后台运行) 镜像name:(多个镜像要加上镜像列表的TAG) 运行容器
  • docker rm (容器的name 或者 容器的id) 删除容器(不删除镜像)
  • docker logs (r容器id) 查看易已存在的容器启动日志

Docker容器操作

软件镜像---运行镜像---产生一个容器(正在运行的软件)

运行一个容器:
	docker run --name tomcat -d tomcat:8.0
	

启动TOMCAT

  • docker run -d -p 8080:8080 tomcat(启动一个做了端口映射的tomcat) -d 后台运行 -p主机端口
  • service firewalld status 查看防火墙的状态

Docker启动镜像方法

MySQL:
	如果当前容器中没有MySQL
	docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=xxx(密码) -d mysql:xxx(镜像name)
	如果当前容器中有MySQL
	docker start 容器id(或者name)
	
tomcat:
	如果当前容器中没有tomcat
	docker run -p 8080:8080 --name tomcat -d mysql:xxx(镜像name)
	如果当前容器中有MySQL
	docker start 容器id(或者name)