Docker是一种轻量级的容器化技术,在计算机范畴里被广泛应用于软件开发、测验和布置等场景。Docker利用容器来封装和阻隔应用程序,使得应用程序能够在任何平台上运转,而不需要忧虑操作系统和依靠环境等问题。

Docker的核心组件包含:

  1. Docker Engine:是一个用来构建和运转Docker容器的开源引擎,提供了一系列的命令行东西和API接口,能够协助用户办理和创立Docker镜像。

  2. Docker Hub:是一个云端的镜像仓库,用来存储、共享和下载Docker镜像,其间包含了许多常见的操作系统、应用程序和中间件等。

  3. Docker Compose:是一个用于编排容器化应用程序的东西,能够通过一个简略的YAML配置文件定义应用程序的组成、依靠关系和运转方法等。

Docker的优点包含:

  1. 简化办理:由于Docker容器是轻量级的、可移植的,因而能够方便地进行布置和办理,特别是对于那些需要频频更新和扩展的应用程序。

  2. 阻隔性:每个Docker容器都是彼此阻隔的,这意味着容器之间互不影响,能够保证应用程序和依靠环境的稳定性和安全性。

  3. 可移植性:Docker容器是可移植的,它们能够在任何支撑Docker的平台上运转,避免了由于操作系统和依靠环境的不同而导致的兼容性问题。

  4. 开放性:Docker是开源的,任何人都能够参加到Docker社区中来共同开发和改进这个项目,同时也能够方便地找到和运用Docker镜像。

Docker需要sudo权限

列出本机的一切 image 文件。

docker image ls

删去 image 文件

docker image rm [imageName]

从仓库抓取镜像

docker image pull hello-world

运转镜像

docker container run hello-world
docker container run -p 8000:3000 -it koa-demo
  • --rm:停止运转后,主动删去容器文件。
  • -p参数:容器的 3000 端口映射到本机的 8000 端口。
  • -it参数:容器的 Shell 映射到当时的 Shell,然后你在本机窗口输入的命令,就会传入容器。

列出本机正在运转的容器

docker container ls

列出本机一切容器,包含停止运转的容器

docker container ls --all

停止指定镜像

docker container kill [containID]

创立image文件

docker image build -t koa-demo .

-timage的名字, .Dockerfile的途径

docker 编译项目

docker run -it --rm -v /path/on/host:/path/in/container qt_project

其间 /path/on/host 是主机上的途径,/path/in/container 是容器内的途径,它们之间运用冒号分隔。在容器内,任何写入到 /path/in/container 目录的文件都将会被主动同步到本地主机上的 /path/on/host 目录中。

运用 -v 参数来挂载目录或文件能够使得容器和主机之间共享数据,并且容器内部的应用程序能够直接读取和写入挂载的数据。这样能够使得容器更加灵活和可定制,同时也方便了开发和调试工作。