Docker
①开源的应用容器引擎,基于Go语言,遵从Apache2.0协议开源
②支持将各种软件配置好后编译成镜象发布,其他使用者可以直接使用这个镜象;运行中的这个镜象称为容器,容器完全使用沙箱机制,柤互之间隔离,并且启动非常快速且开销极低
③核心概念:
docker主机(Host):安装了docker程序的机器(Docker直接安装在操作系统上)
docker客户端(CIient):连接docker主机进行操作
docker仓库(Registry):用来保存各种打包好的镜象(公共、私有)
dockef镜象(Images):软件打包好的镜象,放在docker仓库中
docker容器(Container):镜象启动后的实例称为一个容器,容器是独立运行的一个或一组应用
使用步骤:安装Docker→去仓库找镜象→使用Docker运行镜象,镜象会生成一个Docker容器→对容器的启停就是对软件的启停
④Linux虚拟机:VMWare(重)、VirtualBox(轻);使用客户端连接Linux操作;Docker要求CentOS的内核要高于3.10(uname -r),升级内核:yum update;安装docker:yum install docker,启动:systemctl start docker ,将docker设为开机启动:systemctl enable docker,停止:systemctI stop docker
⑤常用操作
镜象:
检索:docker search 关键字 如redis,去docker hub上检索镜象的信息,OFFICIAL:是否官方,AUTOMATED:是否配置 过不需再配置
拉取:docker pull 镜象名:tag tag是可选的,表示标签,多为软件版本,默认latest
列表:docker images 查看本地所有镜象
删除:docker rmi image-id
容器:
运行:docker run --name 起的容器名 -d 哪个镜象, -d是后台运行,有tag也要加上
列表:docker ps,查看运行中的, 加-a可以查看所有容器
启停:docker start/stop name/id(容器名或id)
删除:docker rm id
端口映射:-p 6379:6379 ,如docker run -d -p 6379:6379 --name mgredis docker.io/redis,主机端口:容器内端口
容器日志:docker logs name/id
更多命令:https://docs.docker.com/engine/reference/commandline/docker/
注意:docker安装时参考官网要配置啥参数,不要忘了端口映射,https://hub.docker.com/