Docker基础(一)

为什么要使用Docker?

  • 减少编写代码和在生产环境中运行代码之间的延迟。

使用Docker有什么好处?

  • 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
  • 容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

CentOS安装Docker

  • 卸载旧版本
$ sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
  • 需要的安装包
$ sudo yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2
  • 设置镜像仓库(阿里云)
$ sudo yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  • 安装docker相关的 (docker-ce 社区版 ee 企业版)
sudo yum install docker-ce docker-ce-cli containerd.io
  • 启动Docker,查看版本
sudo systemctl start docker
docker version
  • 测试helloword,(由于本地没有,所以是从远程仓库拉取)
sudo docker run hello-world
  • 查看helloword镜像
docker images

在这里插入图片描述

  • 阿里云镜像加速

依次点击

  1. 登录阿里云
  2. 镜像容器服务
  3. 镜像中心
  4. 镜像加速器
  5. 选择对应的系统,依次执行命令

在这里插入图片描述

Docker运行原理

  • run的运行流程图

在这里插入图片描述

  • Docker是如何工作的?
  1. Docker是一个Client-Server结构的系统
  2. Docker的守护进程运行在主机上,通过Socket从客户端访问
  3. Docker-Client接收到Docker-client的指令,就会执行这个指令

在这里插入图片描述

  • Docker为什么比虚拟机快?
  1. 它有着比虚拟机更少的抽象层。
  2. 它利用的是宿主机的内核,而虚拟机需要GuestOS,新建一个容器的时候,docker不需要像虚拟机一样重新加载一个操作系统内核,避免引导。
  3. 虚拟机加载GuestOS,是分钟级别的,而Docker是利用宿主机的操作系统,省略这个复杂的引导过程,秒级别的

在这里插入图片描述

常用命令

镜像命令

  • docker -image --help 帮助
  • docker -image -a 显示所有的镜像
  • docker -image -q 只显示镜像的ID
  • docker search XXX 搜索某个镜像, 如:docker search mysql
  • docker pull XXX 下载某个镜像,如:docker pull mysql:5.7
  • docker rmi -f “id” 根据id删除镜像, 如:docker rmi -f bf756fb1ae65
  • docker rmi -f $(docker images -aq) 删除全部的镜像

容器命令

说明:我们有了镜像才能创建容器

  • docker pull centos 下载centos镜像
  • docker run -it *** 新建容器并启动
docker run [可选参数] image
[可选参数说明]
--name="***"  容器名字,用来区分容器
-d			  后台方式运行
-i 或者 -t    使用交互方式运行,进入容器查看内容
-p(小写)     指定容器的端口
-P(大写)	  随机指定端口
  • exit停止容器并退出
  • Ctrl + P + Q退出不停止
  • docker ps 查看当前运行中的容器
  • docker ps -a 查看当前运行中+曾今运行过的的容器
  • docker rm 容器ID 删除指定容器
  • docker rm -f $(docker ps -aq) 删除所有的容器
  • docker ps -a -q|xargs docker rm 删除所有的容器
  • docker start/stop/restart/kill 容器ID 启动,停止,重启,强制停止某容器

常见其他命令

  • 后台启动容器
  1. docker run -d centos
  2. 问题:当docker ps查看运行的容器的时候,发现centos停止了
  3. 原因:docker容器使用后台运行,就必须要有一个前台进程,docker发现没有应用,就会自动停止。
  • 查看容器日志
  1. docker logs -tf --tail (要显示的条数) 容器id:查看容器进程信息
  2. docker top 容器id 查看容器进程信息
  3. docker inspect 容器id查看镜像的元数据
  4. docker exec -it 容器id 进入当前正在运行的容器,进行一些配置的修改
  5. docker attach 容器id 进入当前容器,可以看到他正在运行的东西
  • 从容器拷贝文件到主机上 docker cp 容器id:/home/test.java /home

命令总结

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
项目:使用 JavaScript 编写的杀死幽灵游戏(附源代码) 杀死鬼魂游戏是使用 Vanilla JavaScript、CSS 和 HTML 画布开发的简单项目。这款游戏很有趣。玩家必须触摸/杀死游荡的鬼魂才能得分。您必须将鼠标悬停在鬼魂上 - 尽量得分。鬼魂在眨眼间不断从一个地方移动到另一个地方。您必须在 1 分钟内尽可能多地杀死鬼魂。 游戏制作 这个游戏项目只是用 HTML 画布、CSS 和 JavaScript 编写的。说到这个游戏的特点,用户必须触摸/杀死游荡的幽灵才能得分。游戏会根据你杀死的幽灵数量来记录你的总分。你必须将鼠标悬停在幽灵上——尽量得分。你必须在 1 分钟内尽可能多地杀死幽灵。游戏还会显示最高排名分数,如果你成功击败它,该分数会在游戏结束屏幕上更新。 该游戏包含大量的 javascript 以确保游戏正常运行。 如何运行该项目? 要运行此游戏,您不需要任何类型的本地服务器,但需要浏览器。我们建议您使用现代浏览器,如 Google Chrome 和 Mozilla Firefox。要玩游戏,首先,单击 index.html 文件在浏览器中打开游戏。 演示: 该项目为国外大神项目,可以作为毕业设计的项目,也可以作为大作业项目,不用担心代码重复,设计重复等,如果需要对项目进行修改,需要具备一定基础知识。 注意:如果装有360等杀毒软件,可能会出现误报的情况,源码本身并无病毒,使用源码时可以关闭360,或者添加信任。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值