Docker是一种轻量级的容器化技术,在计算机范畴里被广泛应用于软件开发、测验和布置等场景。Docker利用容器来封装和阻隔应用程序,使得应用程序能够在任何平台上运转,而不需要忧虑操作系统和依靠环境等问题。
Docker的核心组件包含:
-
Docker Engine:是一个用来构建和运转Docker容器的开源引擎,提供了一系列的命令行东西和API接口,能够协助用户办理和创立Docker镜像。
-
Docker Hub:是一个云端的镜像仓库,用来存储、共享和下载Docker镜像,其间包含了许多常见的操作系统、应用程序和中间件等。
-
Docker Compose:是一个用于编排容器化应用程序的东西,能够通过一个简略的YAML配置文件定义应用程序的组成、依靠关系和运转方法等。
Docker的优点包含:
-
简化办理:由于Docker容器是轻量级的、可移植的,因而能够方便地进行布置和办理,特别是对于那些需要频频更新和扩展的应用程序。
-
阻隔性:每个Docker容器都是彼此阻隔的,这意味着容器之间互不影响,能够保证应用程序和依靠环境的稳定性和安全性。
-
可移植性:Docker容器是可移植的,它们能够在任何支撑Docker的平台上运转,避免了由于操作系统和依靠环境的不同而导致的兼容性问题。
-
开放性: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 .
-t
image的名字, .
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
参数来挂载目录或文件能够使得容器和主机之间共享数据,并且容器内部的应用程序能够直接读取和写入挂载的数据。这样能够使得容器更加灵活和可定制,同时也方便了开发和调试工作。