2 years ago发表 运维 linux docker
docker学习笔记
Docker 上手指南
Docker 是一种开源的容器化技术,它能够将应用及其依赖打包到一个可移植的容器中,在任何环境下运行。容器技术使得开发、测试、部署变得更加简便和高效。本文将介绍 Docker 的基础知识和常见用法,帮助你快速上手。
1. Docker 安装
安装 Docker
- Windows:可以从 Docker Desktop for Windows 下载并安装。
- macOS:可以从 Docker Desktop for Mac 下载并安装。
- Linux:可以根据你的 Linux 发行版安装 Docker,具体可以参考 Docker 官方安装文档。
安装完成后,可以通过以下命令验证 Docker 是否成功安装:
docker --version
如果安装成功,会显示 Docker 的版本信息。
2. Docker 基础概念
- 镜像 (Image):镜像是一个包含应用和运行环境的只读模板。通过镜像创建容器。
- 容器 (Container):容器是镜像的运行实例,它是一个隔离的环境,提供了应用所需的操作系统环境和依赖。
- Dockerfile:一个文本文件,包含构建 Docker 镜像的指令。通过 Dockerfile 可以自动化构建过程。
- Docker Hub:一个公共的 Docker 镜像仓库,存储了大量的公开镜像,用户可以下载和上传镜像。
3. Docker 基本命令
启动 Docker 容器
docker run hello-world
- 该命令会从 Docker Hub 下载
hello-world
镜像并启动一个容器。如果是第一次使用 Docker,这将是一个快速的验证步骤,确保 Docker 安装正确。
查看正在运行的容器
docker ps
- 显示当前正在运行的容器列表。
查看所有容器(包括停止的容器)
docker docker ps -a
- 显示所有容器的状态(包括停止的容器)。
停止容器
docker stop <container_id>
- 停止指定的容器,可以通过
docker ps
获取容器 ID。
删除容器
docker rm <container_id>
- 删除已停止的容器。
拉取镜像
docker pull <image_name>
- 从 Docker Hub 下载指定的镜像。例如,
docker pull ubuntu
会下载 Ubuntu 镜像。
删除镜像
docker rmi <image_name>
- 删除指定的镜像。例如,
docker rmi ubuntu
会删除 Ubuntu 镜像。
4. Dockerfile 构建镜像
Dockerfile 是一个包含一组指令的文件,通过这些指令来定义镜像的构建过程。
示例 Dockerfile
FROM ubuntu:20.04
# 安装必要的软件
RUN apt-get update && apt-get install -y python3 python3-pip
# 设置工作目录
WORKDIR /app
# 将当前目录内容复制到容器的 /app 目录
COPY . /app
# 安装依赖
RUN pip3 install -r requirements.txt
# 容器启动时运行 Python 应用
CMD [
构建镜像
docker build -t my-python-app .
-t
用于给镜像命名,my-python-app
是镜像名称,.
表示当前目录。
5. 容器与卷 (Volumes)
创建并挂载卷
docker volume create my_volume
- 创建一个名为
my_volume
的卷。
启动容器并挂载卷
docker run -d -v my_volume:/data my-python-app
- 使用
-v
参数将容器中的/data
目录挂载到my_volume
卷。
查看所有卷
docker volume ls
- 列出所有卷。
6. Docker Compose
Docker Compose 是用于定义和运行多个容器的工具。通过一个 YAML 文件(docker-compose.yml
),你可以定义所有服务、网络和卷等。
示例 docker-compose.yml
version: '3'
services:
web:
image: nginx
ports:
-
web
服务使用nginx
镜像,并将容器的 80 端口映射到宿主机的 8080 端口。app
服务从当前目录构建镜像,并将宿主机的当前目录挂载到容器的/app
目录。
启动服务
docker-compose up
- 启动并运行 `do
共0条评论