Docker使用的个人学习总结

Docker 使用的个人学习总结

简介

Docker 是一个开源的应用容器引擎,让开发者可以在容器中封装自己的应用和服务,并且可以快速地在不同的环境中部署和交付。

安装

  • 在官网下载并安装 Docker 客户端;
  • 检测安装是否成功:docker version

镜像

Docker 镜像是一个只读的文件,包含了我们需要运行应用程序所需的所有内容,如代码、依赖、环境设置等。

常见命令

  • docker images 查看已有的镜像;
  • docker pull 下载一个镜像;例如:docker pull nginx

示例

我们使用 docker pull 命令来下载一个 nginx 镜像,在本地生成一个 nginx 镜像。

docker pull nginx

使用 docker images 查看是否已经下载了这个镜像。

docker images

容器

Docker 容器是从镜像创建的可执行实例,可以在容器中运行应用程序和服务。

常见命令

  • docker run 运行一个容器;例如:docker run --name mynginx -p 8000:80 -d nginx
  • docker stop 停止一个运行中的容器;例如:docker stop mynginx
  • docker rm 删除一个容器;例如:docker rm mynginx
  • docker ps 查询运行中的容器;例如:docker ps -a

示例

我们使用 docker run 命令来启动一个 nginx 容器,在本地生成一个 nginx 容器并启动。

docker run --name mynginx -p 8000:80 -d nginx

使用 docker ps 命令来查询容器是否成功启动。

docker ps

若要停止这个容器,则使用 docker stop 命令。

docker stop mynginx

使用 docker rm 命令删除容器。

docker rm mynginx

docker-compose

Docker Compose 是一个用于定义和运行多容器 Docker 应用程序的工具,可以通过简单的配置文件定义整个应用程序的服务、网络和卷等信息。

示例

我们使用 Docker Compose 来创建一个简单的 Node.js 应用程序。在项目目录下,创建一个 docker-compose.yml 文件。内容如下:

version: '3'
services:
  app:
    build: .
    ports:
      - "3000:3000"
    links:
      - db
  db:
    image: "mongo"

其中:

  • version: '3' 指定 Docker Compose 版本;
  • services 定义了两个服务:appdb
  • app 服务是由当前目录下的 Dockerfile 构建的,并且将本地 3000 端口映射到容器的 3000 端口;
  • db 服务使用官方的 mongo 镜像。

执行 docker-compose up 命令来启动两个服务。

docker-compose up

使用 docker-compose down 命令来停止和移除所有的容器、网络和卷等。

docker-compose down

结论

在使用 Docker 进行应用程序开发和部署时,镜像和容器是最关键的概念,一定要对它们的使用和原理有深入的了解。同时,Docker Compose 可以使得应用程序的管理和调度更加简单和高效。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Docker使用的个人学习总结 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • 磁盘有限,Docker 垃圾很多怎么办

    你的电脑上可能 pull 或者 build 了很多 Docker 镜像,但是你不知道怎么清理,本文将介绍如何清理 Docker 垃圾的常见方法。 你的电脑上可能 pull 或者 build 了很多 Docker 镜像,但是你不知道怎么清理,本文将介绍如何清理 Docker 垃圾的常见方法。 docker prune 你可以通过原生的多种 prune 命令来清…

    2023年4月9日
    00
  • 详解基于Docker的服务部署流程

    下面我将详细讲解基于Docker的服务部署流程的攻略。 什么是Docker? Docker 是一个开源的应用容器引擎,可以让开发者打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 或 Windows 机器上,而这个容器是以独立、安全的方式运行的。 Docker的优势 Docker 具有以下优势: 高效的资源利用:可以将多个应用运…

    Docker 2023年5月16日
    00
  • Maven项目集成Docker,推送私服并运行

    在日常开发过程中,会将项目进行打包,并运行到服务器上。在本文中介绍使用docker的方式,将本地jar包推送到docker私服,并运行在远程服务器上。 步骤 新建一个maven项目,目录结构如下: 将maven编译打包插件、docker打包插件引入到pom文件中 2.1. 多环境配置 pom文件中profile下的profile.name要与applicat…

    Docker 2023年4月13日
    00
  • Docker Hub运行原理及实现过程解析

    Docker Hub运行原理 Docker Hub是一个Docker镜像的集成、发布以及自动化构建的仓库平台。它是一个中央集中式存储库管理工具,允许用户基于Docker创建、存储和分享镜像,以及管理Docker容器。Docker Hub的运行原理可以分为以下几个步骤: 1)用户在Docker客户端中构建自己的Docker镜像,然后将其推送到Docker仓库中…

    Docker 2023年5月16日
    00
  • docker 挂载、修改文件的步骤

    Docker是一种开源的容器化技术,它能够将应用程序及其依赖项打包在容器中,从而实现隔离和移植,减轻了部署和维护工作的负担。 当我们在Docker容器中运行应用程序时,有时需要修改或挂载某些文件,这时我们可以使用Docker挂载和修改文件来实现。以下是详细的步骤。 Docker 挂载文件 对于需要在Docker容器中挂载本地文件系统的应用程序,可以使用以下步…

    Docker 2023年5月15日
    00
  • 从linux上的docker持久化mysql数据恢复到本地mysql数据库

    网上查询 先说说这几种文件是干什么的:*.frm是描述了表的结构,*.myd保存了表的数据记录,*.myi则是表的索引。其实一个.frm文件就是对应的数据库中的一个表,表示数据表的表结构。.MYD文件 这应该是INNODB引擎外的数据文件。.MYI文件:.myi是MyISAM表的索引的扩展名 .对数据库的操作有大量的select,就用MyISAM表对数据库的…

    Docker 2023年4月13日
    00
  • aspnetcore 原生 DI 实现基于 key 的服务获取

    你可能想通过一个字符串或者其他的类型来获取一个具体的服务实现,那么在 aspnetcore 原生的 MSDI 中,如何实现呢?本文将介绍如何通过自定义工厂来实现。 你可能想通过一个字符串或者其他的类型来获取一个具体的服务实现,那么在 aspnetcore 原生的 MSDI 中,如何实现呢?本文将介绍如何通过自定义工厂来实现。 我们现在恰好有基于 Json 和…

    2023年4月9日
    00
  • k8s部署docker容器的实现

    k8s部署docker容器的实现是一项比较复杂的工作,需要一定的专业知识和技巧。下面我将为您详细介绍这个过程的完整攻略。 准备工作 在开始部署前,我们需要做一些准备工作: 安装docker和kubectl工具 # 安装docker sudo apt-get update sudo apt-get install docker.io -y # 配置docker…

    Docker 2023年5月16日
    00
合作推广
合作推广
分享本页
返回顶部